哎,没想到今天绊死在这里...
问题: 如果验证错误,表单还是提交了。问题大概处在提交按钮的type=‘submit’,但是如果这个type改为button的话,js中的submit方法就会提示:对象不支持此属性或方法
应该怎么解决呢..一个表单如下:
<form action="trouble_add.php" method="post" >
<input .....>
<input name="Submit" id="submit" type="submit" value="提交" />
</form>
js代码:$('#submit').click(function(){
username = $('#user').val();
if(username == ''){
$('#trouble_form').submit();
}else{
$.ajax({
url:'check_user.php',
data:'name=' + username,
type:'POST',
dataType:'text',
success: function(ajaxdata){
if(ajaxdata == 1){
alert('test');
$("form:first").submit();
}else{
alert('系统中不存在该用户名,请检查输入是否正确。如果不确定客户的用户名,可填写客户名称');
//history.back();
$('#testinput').focus();
return false;
}
}
});
})
问题: 如果验证错误,表单还是提交了。问题大概处在提交按钮的type=‘submit’,但是如果这个type改为button的话,js中的submit方法就会提示:对象不支持此属性或方法
应该怎么解决呢..一个表单如下:
<form action="trouble_add.php" method="post" >
<input .....>
<input name="Submit" id="submit" type="submit" value="提交" />
</form>
js代码:$('#submit').click(function(){
username = $('#user').val();
if(username == ''){
$('#trouble_form').submit();
}else{
$.ajax({
url:'check_user.php',
data:'name=' + username,
type:'POST',
dataType:'text',
success: function(ajaxdata){
if(ajaxdata == 1){
alert('test');
$("form:first").submit();
}else{
alert('系统中不存在该用户名,请检查输入是否正确。如果不确定客户的用户名,可填写客户名称');
//history.back();
$('#testinput').focus();
return false;
}
}
});
})
你的form有没有给id或name赋值?
您可以忽略这个错误,忽略掉username为空的判断....
username = $('#testinput').val();
if(username == ''){
return true;
}else{
return false;
}
} 然后用户名为空时可以提交 为非空时不能提交ajax对这个表单提交有什么影响? 摸不着头脑...
如果是这样子是不会去验证而直接提交表单的,所以你如果要验证完毕再提交,就用普通按钮。
<input type="button" onclick="submitForm()" value="提交" />
然后对应添加一个submitForm函数就行了。
<html>
<head>
<script language="javascript" type="text/javascript">function funfun()
{
var tmp=document.getElementById("11").value;
alert(tmp);
if(tmp=="aa")
{
document.shuyu.submit();
}
else
{
return false;
}}
</script>
</head>
<body>
<form action="22.php" method="post" name="shuyu" >
<input type="text" id="11" name="11" >
<input type="button" value="tijiao" onClick="javascript:funfun();">
</form>
</body>
</html>
鉴于5楼辛苦给实例,多撒点分,谢谢!同谢1楼关注!
onClick="javascript:f();"> 或者onClick="javascript:return f()" 效果是没有区别的。那之前不断测试又不断出问题的原因可能是因为未清空缓存或者其他灵异问题...