jquery切换所有文本框上的模糊?

时间:2009-12-08 15:02:47

标签: jquery

我有一个通过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);
}

3 个答案:

答案 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事件。

调整选择器以满足您的需求。