Sha*_*ggy 1 forms ajax jquery javascript-events
我通过ajax调用填充texbox值.我希望在值被填充时更改事件被触发.
ajax电话
$.ajax({
url: 'ajaxExecute.aspx/GetCustInfoTeller',
data: strRequest,
dataType: "json",
contentType: "application/json",
cache: false,
context: document.body,
type: 'POST',
success: function (response) {
var saResponse = response.d.split("|");
$('#txtDateofBirth').val(saResponse[0]); // For this textbox change event gets fired
}
});
Run Code Online (Sandbox Code Playgroud)
变更事件处理程序的代码
$("#txtDateofBirth").bind('change', function () {
alert('1');
var today = new Date();
var birthDate = new Date($("#txtDateofBirth").val());
var age = today.getFullYear() - birthDate.getFullYear();
var m = today.getMonth() - birthDate.getMonth();
if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) {
age--;
}
alert(age);
if (age > 7) {
$('#trMinor').hide();
}
else {
$('#trMinor').show();
}
});
Run Code Online (Sandbox Code Playgroud)
txtDateofBirth通过ajax 输入值时,我没有收到警报
您必须手动触发事件,只有在用户界面启动更改时才会自动触发事件.以编程方式设置值不会触发change事件.
您可以使用.trigger()jQuery方法触发事件:
$('#txtDateofBirth').val(saResponse[0]).trigger('change');
//or
$('#txtDateofBirth').val(saResponse[0]).change();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2041 次 |
| 最近记录: |