Итак, я следовал этому руководству
http://www.mikesdotnetting.com/Article/196/WebMatrix-jQuery-Cascading-Dropdown-Lists
Все работает хорошо, но когда я сохраняю в базу данных первое раскрывающееся меню, передайте мне идентификатор, и я не могу понять, как передать имя вместо идентификатора.
<select id="categoryId" name="categoryId">
<option value="">-- Select Category --</option>
@foreach(var category in categories){
<option value="@category.CategoryId">@category.CategoryName</option>
}
</select>
Я знаю, что это идентификатор, но если я изменю его, в раскрывающемся списке дочерних элементов не будет отображаться никакой опции.
это помощник
var data = db.Query("SELECT CategoryId, CategoryName FROM categorias ORDER BY CategoryName");
var categories = data.Select(item => new SelectListItem {
Value = item.CategoryId.ToString(),
Text = item.CategoryName
});
И это то, что создает Json
@{
Layout = null;
var categoryId = UrlData[0].IsEmpty() ? 1 : UrlData[0];
var db = Database.Open("AppCCentro");
var sql = "SELECT ProductId, ProductName FROM produtos WHERE CategoryId = @0 ORDER BY ProductName";
var products = db.Query(sql, categoryId);
Json.Write(products, Response.Output);
}
Я не могу понять, что мне нужно изменить, чтобы выбранное значение, которое он передал, было не идентификатором, а названием категории.