我有一个简单的表格:
<form name ="Add" action="Add-Results.php" method="post">
<label for="name" class="smallfont">Name</label>
<input type="text" name="name" size="30" />
<label for="name_error" class="error">Please enter a name</label>
<input type="image" name="submit" src="../Content/Images/login-submit.gif">
</form>
在我添加以下jquery
之前,其工作正常$(document).ready(function()
{
$(".error").hide();
$("input[name=submit]").click(function()
{
$(".error").hide();
var name = $("input[name=name]").val();
if (name == "") $("label[for=name_error]").show();
return false;
});
});
</script>
当我点击jquery时,单击提交时没有任何反应。当我拿出jquery表格帖子没有问题。有什么想法吗?
答案 0 :(得分:4)
if (name == "") $("label[for=name_error]").show();
应该是
if (name == ""){ $("label[for=name_error]").show(); return false}
答案 1 :(得分:2)
不会发送表单,因为您在单击处理程序的末尾使用了return false
- 因此您可以阻止默认操作运行。并且提交表单是在点击时进行的默认操作 - 它将不会运行。尝试删除该行。
答案 2 :(得分:0)
也许你可以将所有逻辑放在一个函数中,并在按钮的onclick事件中调用该函数,如下所示:
function checkName() { var flag = true;
$(".error").hide();
var name = $("input[name=name]").val();
if (name == "")
{
$("label[for=name_error]").show();
flag = false;
}
return flag;
}
然后
<input type="image" name="submit" onClick="checkName()" src="../Content/Images/login-submit.gif">