0

我是 jQuery 新手,我正在尝试使用教程来理解它。我从注册表单验证开始。我做了一个脚本,它工作正常,但消息显示了几秒钟。我希望在用户再次填写该字段之前显示消息。

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

 <form id="form1"> 
  Name<input type="text" name="fname" id="fname">
  <input type="submit" value="submit" id="submit">
</form>
    <script>   
            $(document).ready(function(){
        //var msg=$("p").text("Are you sure?");
        $("#form1").click(function(){
            if ($('#fname').val()=="") {
            //$("#ms").show("slow");
            $("p").html("Are you sure?");
            //$(this).show("Are you sure?");

            }
        });
            });
    </script>

</body>
</html>
4

3 回答 3

1

嗨,做一件事用您的代码替换下面的代码

  <script>   


     $(document).ready(function(){
        //var msg=$("p").text("Are you sure?");
           $("#submit").click(function(){
           if ($('#fname').val()=="")
           {
             //$("#ms").show("slow");
              $("p").html("Are you sure?");
             return false;
            //$(this).show("Are you sure?");
           }
        });
            });
        </script>
于 2013-01-04T12:43:07.443 回答
1

最好使用<form>' 事件,而不是onclickfor submit

将您更改script为:

<script>
    $(document).ready(function(){
        //var msg=$("p").text("Are you sure?");
        $("#form1").submit(function(){
            if ($('#fname').val()=="") {
                //$("#ms").show("slow");
                $("p").html("Are you sure?");
                //$(this).show("Are you sure?");
            }
            return false;
        });
    });
</script>
于 2013-01-04T12:43:28.093 回答
0

return false在函数结束时使用

$("#form1").submit(function(){
    if ($('#fname').val()=="") {
        //$("#ms").show("slow");
        $("p").html("Are you sure?");
        //$(this).show("Are you sure?");
    }
    return false;
});

并为您的第二个问题使用keyup

$('#fname').keyup(function(){
  if(empty($(this).val()))
      $("p").show();
  else
     $("p").hide();
});

但是.. 我建议您使用一些 jquery验证插件,而不是自己编写...

于 2013-01-04T12:50:25.550 回答