html中submit和button的区别/ window.location.href 不跳转 的问题
<input type="button"> <input type="submit">
这两个的区别 是
button 不会自动提交表单数据,只会执行 onclick 里面的事件处理,如果要提交数据,需要加上 document.form1.submit(); 等
submit 会自动提交表单数据,使用它的时候要加上验证 ,放回 验证 return ture ; 或 return false;
<input type="submit" name="Submit" value="注册" onClick=" return check(); " >
<script>
funciotn check()
{
验证 满足条件 return ture;
不满足条件 return false;
}
</script>
[ <asp:Button OnClick="" OnClientClick="return check()" >
服务端控件 可以加上 OnClientClick 验证。 ]
需要注意的是 <button> </button> 控件 有特殊情况,在Internet Explorer 的默认类型是“button” ,而在其他浏览器中 的默认值时 “Submit” ,用 button 时,要加的规定 Type 值。
但是用到 异步操作, 如 $.ajax() ,success 后 会跳转页面,当 type=“submit” 时, 没有加验证,执行完 $.ajax () 后,并不会跳转, 会自动提交 表单, 显示的效果就是 刷新了一下, 并不会 跳转到其他页。
例如:
$("#save").click(function () { var supplyvalues = jQuery.map($landlordsupply.filter(":checked"), function (a) { return $(a).val(); }) $.getJSON("/WebServer/AddHouseInfo.ashx", { "type": "addhousefacility", "facility": supplyvalues.join() }, function (r) { if (r.err == "0") { alert("发布成功"); window.location = "SubmitHouse.aspx?ti=" + Math.random(); } else { alert(r.err); }; }); return false;
// 必须加上 这句话,才不会继续提交表单, 并且这句话不能加到
//getJSON() 里面, 异步 加到里面没有作用,只有异步执行完后 // 加上这句话,做出判断,不会继续执行 Submit. })