2013-01-07 54 views
1

我是jquery的新手,我开始学习jquery的基础知识。我为注册表格制作jquery脚本。它是正常工作,而提交表单与单个或两个字段为空,查询显示错误消息,但如果我再次填充空字段,那么它也显示相同的错误消息,并在重新加载消息停止显示。jquery:脚本不工作

<!DOCTYPE html> 
<html> 
<head> 
<meta content="text/html;charset=utf-8" http-equiv="Content-Type"> 
<meta content="utf-8" http-equiv="encoding"> 
    <style> 
    c { color:red; margin:4px; } 
    b { color:blue; } 
    </style> 
    <script src="jquery-latest.js"></script> 
    <script src="jquery.js"></script> 
</head> 
<body> 

<h1>Registration Form:</h1> 

<form id="form1"> 

<div>First Name<input type="text" name="fname" id="fname"><span></span></div> 
<div>Last Name<input type="text" name="lname" id="lname"><span></span></div> 
<div><input type="submit" value="submit" ></div> 

</form> 

<script> 

$(document).ready(function(){ 

    $("#form1").submit(function(){ 
     var $spans = $("span"); 

     if ($('#fname').val()=="") {  
     $spans.eq(0).html("<c>Please enter your Firstname</c>"); 
     }  
     if ($('#lname').val()==""){ 
     $spans.eq(1).html("<c>Please enter your Lastname</c>"); 

     }return false; 

    }); 
}); 
</script> 

回答

1

这是因为输入不为空时不删除文本内容。请注意,您不应该使用jQuery两次,并且c不是有效的标记。

var $spans = $("span"); 
$("#form1").submit(function(){ 
    $spans.eq(0).html($('#fname').val() == "" ? "Please enter your Firstname" : ""); 
    $spans.eq(1).html($('#lname').val() == "" ? "Please enter your Lastname" : ""); 
    return false; 
}); 
+0

: - 谢谢你,先生,以帮助我。 –