Jam*_*iah 5 javascript php ajax jquery
我这里有两个Jquery函数,第一个根据用户下拉选择选项执行ajax加载,然后根据返回的值更改输入字段.这很好用.
//perform a background ajax load and get the allocation available if any
$("#ministry").change(function(){
var ministry=$("#ministry").val();
var url="/VoteBook/ministry.php?mini="+ministry;
$.get(url, function(data,status){
$(".alloc").val(data);
})
});
Run Code Online (Sandbox Code Playgroud)
然后第二个函数应该监听上面指定的输入字段的变化,如果输入字段中的值是0,它应该禁用表单中的所有输入字段.看来,'jquery on change'功能不会通过输入字段上的ajax检测到更改.任何帮助都非常感谢.
//disable all inputs on allocation field change
$(".alloc").change(function(){
var allocation=$(".alloc").val();
if(allocation==0){
$("#add_vote_form :input").attr('disabled', true);
}
});
Run Code Online (Sandbox Code Playgroud)
问题在于,以编程方式更改input元素值不会引发事件。要获得您需要的行为,您可以trigger()手动事件:
$.get(url, function(data,status){
$(".alloc").val(data).trigger('change');
})
Run Code Online (Sandbox Code Playgroud)