jQuery Изменить значение ASP.NET AJAX CascadingDropDown - PullRequest
2 голосов
/ 03 августа 2010

Я могу использовать jQuery для изменения значения CascadingDropDown, но событие, которое вызывает то, что дочерний элемент управления целевого элемента заполняется данными, никогда не происходит:

$("#<%= ddlFromCompetition.ClientID %>").change(function() {
  var fromValue = $("#<%= ddlFromCompetition.ClientID %>").val();
  $("#<%= ddlToCompetition.ClientID %>").val(fromValue); // causes value to change, but child doesn't update
});

Чтобы очистить, ddlFromCompetitionи ddlToCompetition не являются родителями / детьми.Это дочерний элемент ddlToCompetition, который не обновляется с использованием вышеуказанного кода.При выборе ddlToCompetition с помощью мыши его дочерний выпадающий список обновляется, как и ожидалось.

Я пытался вызвать $("#<%= ddlToCompetition.ClientID %>").change(), чтобы попытаться вызвать событие, но оно не работает.

1 Ответ

0 голосов
/ 03 августа 2010

Вам нужно событие trigger ()

$("#<%= ddlToCompetition.ClientID %>").trigger('change');

JQuery документы: http://api.jquery.com/trigger/

Кроме того, поскольку первый обработчик события изменения для ddlFromCompetition запускается в контексте ddlFromCompetition, вы должны иметь возможность изменить ...

var fromValue = $("#<%= ddlFromCompetition.ClientID %>").val();

до ...

var fromValue = $(this).val();
...