我在添加表单的下拉列表中更改下拉值。但是在编辑时,如果两个值都被选中,则必须填充两者。 现在我想这样做: -
我已经创建了一个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);
}
});
}
答案 0 :(得分:0)
您可以使用on()
委派change
处理程序,以便在运行代码时不需要存在select
。基本上这意味着您可以在表单存在之前在页面加载代码中创建委派的更改处理程序。
$(document).on( 'change', '#ID_of_select', function(){
getTypeOfLocation( $(this).val() );
})