2

我正在加载更改添加表单下拉列表的下拉值。但是在编辑时,如果两个值都被选中,则必须填充两者。现在我想这样做: -

我制作了一个 javascript 函数,它将获取第一个下拉列表的选定值并执行 ajax 调用并获取第二个下拉列表的数据。

现在的问题是我应该何时以及如何调用该函数?

一种方法是在表单加载后调用该函数。这就是我需要你帮助的地方。如何在表单加载后调用该函数?

这是功能:

function getTypeOfLocation(munId){
        $('#cad_type_of_location_id > option').remove();
        $.getJSON("/cad/get_typeoflocation?" + 'id=' + munId, function(data) {

            if (data.length != 0) {
                var opt = $('<option />'); // here we're creating a new select option with for each city
                opt.val(data[0].id);
                opt.text(data[0].name);
                $('#cad_type_of_location_id').append(opt); //here we will append these new select options to a dropdown with the id 'cities'

             } else {
                   var opt = $('<option value=""> No Data </option>');
                   $('#cad_type_of_location_id').append(opt);
             }
        });
}   
4

1 回答 1

0

您可以使用on()委托change处理程序,以便在select运行代码时不需要存在。基本上这意味着您可以在表单存在之前在页面加载代码中创建委托更改处理程序。

$(document).on( 'change', '#ID_of_select', function(){
   getTypeOfLocation( $(this).val() );
})
于 2013-01-12T15:53:04.017 回答