我有一个通过jquery验证的表单,但是一旦选中了提交按钮,我需要再次触发blur事件,以防用户删除任何内容。它显示错误,但文本框旁边仍显示“tick”,因为这只会在模糊事件中发生变化。
如何将模糊事件切换到所有文本框以重新验证它们?
由于
编辑:添加代码
if(httpxml.readyState==4)
{
if (httpxml.responseText.indexOf("Successful") >= 0)
{
$("#result").show("slow");
$("#result").html("Project request has successfully been sent");
$("#result").removeClass("result_error");
}
else if (httpxml.responseText.indexOf("Fail") >= 0)
{
$("#result").html("One or more errors have occured, please fix and submit again");
$("#result").addClass("result_error");
$("#result").show("slow");
$(':text').trigger('blur'); <<--- Blur text boxes here
}
}
检查:
function check_email(email)
{
var httpRequest;
make_request()
$("#loading").show();
function stateck()
{
if(httpxml.readyState==4)
{
if (httpxml.responseText.indexOf ("Email Ok") >= 0)
{
$("#email_tick").show();
$("#email_cross").hide();
$("#email_error").hide("normal");
$("#loading").hide();
emailok = true;
}
else
{
$("#email_tick").hide();
$("#email_cross").show();
document.getElementById('email_error').innerhtml = "Invalid email";
$("#email_error").show("slow");
$("#loading").hide();
emailok = false;
}
checkCanSubmit();
}
}
httpxml.onreadystatechange=stateck;
email_url="../checking/check_email.php?email=" + email.value;
httpxml.open("GET",email_url,true);
httpxml.send(null);
}
答案 0 :(得分:3)
我不清楚你在问什么,但如果你问如何手动触发模糊:
$(':text').trigger('blur');
答案 1 :(得分:2)
您可以通过以下方式触发:
$('input:text').blur();
// or
$('input:text').trigger('blur');
答案 2 :(得分:0)
$('#button').click(function () {
$('input').blur();
});
代码读作:
点击id="button"
按钮后,找到所有<input />
并点击blur
事件。
调整选择器以满足您的需求。