我有一段Jquery代码,可以对字段进行大量验证。我目前在.blur()
上被解雇了。
由于服务器可以在加载时预先填充此字段,我也想在那时运行该验证,但我不知道如何调用绑定到控件的.blur()
函数
这是我的代码,其中大部分内容都是为了简洁起见......
$('#<%=txtCity.ClientID %>').blur(function () {
$('#txtCityLoader.loader').show();
if ($('#<%=txtCity.ClientID %>').val().length == 0) {
//chuck some errors
}
$.ajax({
type: "POST",
url: "~/AtomicService/Validation.asmx/DoesCityExist",
data: "{'country':'" + $('#<%=ddlCountry.ClientID%>').val() + "'}",
contentType: "application/json",
dataType: "json",
success: function (msg) {
$('#txtCityLoader.loader').hide();
if (msg["d"].length > 0) {
var data = $.parseJSON(msg.d);
if (data.Response == 'True') {
//all is well, tick the box
} else {
//stuff and nonsense
}
} else {
//do some other stuff
}
},
error: function (msg) {
//do stuff
}
});
});
当页面加载并document.ready()
触发时,我想运行此功能 - 我该怎么做?
帮助表示赞赏。
答案 0 :(得分:3)
您需要触发将方法绑定到
的事件$('#<%=txtCity.ClientID %>').blur()
或
$('#<%=txtCity.ClientID %>').trigger('blur');
答案 1 :(得分:2)
将模糊功能中的代码移动到单独的方法中。例如:
//Call your function when the document is ready
$(document).ready(yourFunction);
//Call your function on text box blur
$('#<%=txtCity.ClientID %>').blur(yourfunction);
//Your function
function yourFunction()
{
//Add your existing blur method code and ajax call here
}
答案 2 :(得分:1)
function validate () {
$('#txtCityLoader.loader').show();
if ($('#<%=txtCity.ClientID %>').val().length == 0) {
//chuck some errors
}
$.ajax({ ... });
}
$('#<%=txtCity.ClientID %>').blur(validate);
$(document).ready(validate);