我是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>
答案 0 :(得分: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>
答案 1 :(得分:1)
<form>
的事件,而不是onclick
用于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>
答案 2 :(得分: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 validation plugins而不是自己编写......