提高验证失败的错误

时间:2010-01-18 21:36:23

标签: jquery html validation

请查看代码

HTML代码:

First Name: <input type="text" name="fname" id="fname" >
<p id='p1'></p> 

Last Name: <input type="text" name="lname" id="fname" >

<input type="submit" name="submit" value="Submit" onclick="return validate_form();" >

验证码:

function validate_form()
{
    if ( document.form.fname.value == "" )
    {
        $('#p1').val("Please fill in fname");
        return false;
    }
}

我创建了一个表单,其中有两个文本框(fname,lname)。现在假设我保持textbox1空置然后我按Tab键继续下一个文本框。当我移动到第二个文本框时,在textbox1的右侧应该显示一条错误消息(plz fill fname box)

Plz检查coading并更正它..我的代码没有在这里显示prohowrly ..如何复制 - 粘贴代码在这里,以便它可以正常显示..我是新的所以PLZ ...

3 个答案:

答案 0 :(得分:2)

您希望触发的事件称为“模糊”,可以像这样连接起来:

<input type="text" name="fname" id="fname" onblur="javascript:validate_form();" />

或者在jQuery中:

$(function() {
  $('#fname').blur(validate_form);
});

现在,'validate_form'功能将挂钩到fname字段的“模糊”操作。

要在StackOverflow上发布代码,请突出显示问题和答案的代码部分,然后单击标有“101010”的按钮将其作为代码阻止。

另见theraccoonbear关于使用.html()而不是.val()的评论。

编辑:添加了jQuery版本并为选民保留了旧的输入。

答案 1 :(得分:0)

Cryo提到你想要onblur事件,但我认为你还需要修改设置错误消息的代码,以便在jQuery中使用html()而不是val()方法。 e.g。

$('#p1').html("Please fill in fname");

答案 2 :(得分:0)

  

onclick =“return validate_form();” &GT;

不要在submit-onclick上放置表单验证码。它属于form-onsubmit。这样就可以保证代码将被调用,但表单已提交。

  

if(document.form.fname.value ==“”)

您在该控件上有id,也可以使用document.getElementById('fname'),或者,因为您似乎使用了jQuery $('#fname').val()。其中任何一个都是明确的,直接从documentform对象访问输入可能不是。

  

$('#p1')。val(“请填写fname”);

val()用于表单字段而非文本内容。你想要.text('message')