У меня проблема с JQuery и MVC3. Я уверен, что это связано с привязкой к модели, я в основном пытаюсь загрузить раскрывающийся список на мою страницу, используя jquery, теперь этот пример ниже работает...
@model way.Models.servicer
@Html.DropDownListFor(model => model.adtype, new SelectList(
new List<Object>{
new { Text = " ", Value = " "},
new { Text = "Financial", Value = "Financial"}}, "Value", "Text"), new {@class="mylist" })
<script>
$(".mylist").change(function () {
if ($(this).val() == "Financial") {
$("#miness").load('/Listings/service .credit');
}
});
</script>
который затем загружает этот раскрывающийся список, модельный сервиз
@model way.Models.servicer
@Html.DropDownListFor(model => model.keyword, new SelectList(
new List<Object>{
new { Text = "Book-keeping", Value = "Book-keeping"},
new { Text = "Credit Repair", Value = "Credit Repair"}}, "Value", "Text"), new {@class="credit" })
Пример выше работает сейчас, я в основном использую те же шаги этой модели ниже, но этот пример не работает
@model way.Models.article_detail
@Html.DropDownListFor(model => model.profile.groups, new SelectList(
new List<Object>{
new { Text = " ", Value = " "},
new { Text = "Computer", Value = "Computer"}}, "Value", "Text"), new {@class="bty"})
<script>
$(".bty").change(function () {
if ($(this).val() == "Computer") {
$("#miness").load('/Listings/ding .computer');
}
});
</script>
которые затем предполагают загрузить этот выпадающий список
@model way.Models.article_detail
@Html.DropDownListFor(model => model.profile.role, new SelectList(new List<Object>{
new { Text = "windows", Value = "windows"},new { Text = "mac", Value = "mac"}}, "Value", "Text"), new { @class = "computer" })
Я не понимаю, почему 1 работает, а другой нет. Существует 1 небольшая разница. В 2-м примере есть 2 модели в 1 представлении, поэтому model.profile.role может быть как-то 2 модели в 1 представлении отбрасывают вещи, но я ссылаюсь на класс, поэтому я не знаю, что происходит с предложениями?
Вы загружаете выпадающий список через jquery ajax, если да, тогда вам нужно переустановить событие jquery на элемент управления, потому что привязка jquery работает только в том случае, если элемент dom загружается перед jquery.