当提交时判断,条件满足时,阻止表单提交,代码如下:代码如下
$('#submita').click(function(event) {
//满足一定条件,阻止表单提交
....略
event.preventDefault();
}
}); 这个时候,表单的确阻止了,但阻止以后,我需要点击别的控件postback页面,第一次点击没有任何的反应,只有第二次以后才能刷新页面,这是怎么回事?应该点击第一次就能刷新呀
$('#submita').click(function(event) {
//满足一定条件,阻止表单提交
....略
event.preventDefault();
}
}); 这个时候,表单的确阻止了,但阻止以后,我需要点击别的控件postback页面,第一次点击没有任何的反应,只有第二次以后才能刷新页面,这是怎么回事?应该点击第一次就能刷新呀
if (event.preventDefault) {
event.preventDefault();
} else {
event.returnValue = false;
}
}
//满足一定条件,阻止表单提交
....略
if (event.preventDefault) {
event.preventDefault();
}
else {
event.returnValue = false;
}
}
});
<input id="submita" type="submit" onclick="return false">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#myform").submit(function(){
return !!$.trim($("#content").val());
});
});
</script>
</head><body>
<form id="myform" name="myform" action="tset2.html" >
文字不为空才能提交:
<input id="content" type="text" value=""/>
<input type="submit" id="submita" value="提交"/>
</form>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript">
function checkform(){
return !!document.getElementById("content").value;
}
</script>
</head><body>
<form id="myform" name="myform" action="tset2.asp" onsubmit="return checkform();">
文字不为空才能提交:
<input id="content" type="text" value=""/>
<input type="submit" id="submita" value="提交"/>
</form>
</body>
</html>
<form id="myform" name="myform" action="tset2.html" >
文字不为空才能提交:
<input id="content" type="text" value=""/>
<input type="submit" id="submita" value="提交"/>
<input type="submit" id="submita" value="提交2"/>
</form>
当条件满足时,(也就是这里的文本框不能为空),阻止提交,但这时我需要点"提交2"按钮postback页面,点第一次没有反应,点第二次以后才可以提交见贴 http://topic.csdn.net/u/20090721/16/22623d9f-c5be-4096-b2c4-e6df5d57f31a.html
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#submita").click(function(){
if(!!$.trim($("#content").val())){
$("#myform").submit(); //JS执行提交表单,你也可以去做其他动作
}
});
$("#submita2").click(function(){
if(!$.trim($("#content").val())){
$("#myform").submit(); //JS执行提交表单,你也可以去做其他动作
}
});
});
</script>
</head><body>
<form id="myform" name="myform" action="test2.html" >
<input id="content" type="text" value=""/>
<br/>文字不为空才能提交:<input type="button" id="submita" value="提交"/>
<br/>文字为空才能提交:<input type="button" id="submita2" value="提交2"/>
</form>
</body>
</html>
$('#tjsubmit').click(function(event) {
var a = $(":checkbox:checked");
if (a.length < 1) {
alert("至少选一个部门"); //给出提示
event.preventDefault(); //阻止提交,阻止成功,但紧跟着我要点treeivew
//提交页面,以改变一些条件,
//点击第一次没有反应,第二次以后才可以
}
}); });
不知道这次听明白了没有?感谢你的关注,期待结果!!!
我觉得我在10楼的代码应该能帮你解决这个问题。
表单的提交不用直接用submit按钮实现,你的treeview按钮可能就是一个submit按钮。
我不知道你能不能改动treeview按钮的提交事件,如果不能,你试试就像我代码里面的例子一样,把submita2的提交事件用JS来控制,而不是使用submit按钮。
这样避免了和treeview的冲突,纯粹只是一个按钮点击事件,JS触发提交表单事件(条件不满足的时候不触发提交事件,这样就没有了return false使得表单失效)。
实在不行,构建一个隐藏的表单,通过JS让2个表单数据同步。把你的submita按钮和这个treeview所在的表单分离出去。
阻止提交: $("#Form1").submit(function () {
return false;
});HTML: <form id="Form1" runat="server"></form>