Я пытаюсь использовать AJAX для заполнения раскрывающегося списка на основе выбора другого раскрывающегося списка. Я следовал руководству, используя jQuery, расположенный здесь - http://remysharp.com/2007/01/20/auto-populating-select-boxes-using-jquery-ajax/, и изменил имена идентификаторов блока выбора в именах блока выбора в скрипте.
При изменении значения основного флажка ajax отправляется и возвращается, как показано ниже:
{"1":"Kieran Hutchinson","2":"Caleb Tan","3":""}
Это немного отличается от строки JSON, возвращаемой в коде учебника, который выглядит следующим образом
[{optionValue:10, optionDisplay: 'Remy'}, {optionValue:11, optionDisplay: 'Arif'}, {optionValue:12, optionDisplay: 'JC'}]
Я думаю, что это проблема, но я не знаю, как получить правильные значения из моего ответа JSON.
JavaScript как ниже:
$(function(){
$("select#ContactCompanyId").change(function(){
$.getJSON("contactList",{id: $(this).val(), ajax: 'true'}, function(j){
var options = '';
for (var i = 0; i < j.length; i++) {
options += '<option value="' + j[i].optionValue + '">' + j[i].optionDisplay + '</option>';
}
$("select#QuoteContactId").html(options);
})
})
})
Заранее спасибо