我的一个页aa.aspx//这是一段JS
function Search()
{
var obj7 = document.getElementById("textfield");
var tname = obj7.value;
window.open("bb.aspx?keyword=" + tname);
}
function onSubmit()
{
if(event.keyCode==13)
{
Search();
}
}
//这是我页中的一个TEXTBOX
<form id="form1" runat="server" method="post">
<asp:TextBox ID="textfield" runat="server" onkeypress="Submit();"></asp:TextBox>
</form>
我在textbox里面输入后,直接按回车,打开新页bb.aspx,但是不知道为什么本页aa.aspx会刷一下!
明明没有回发的代码啊?不解!
function Search()
{
var obj7 = document.getElementById("textfield");
var tname = obj7.value;
window.open("bb.aspx?keyword=" + tname);
}
function onSubmit()
{
if(event.keyCode==13)
{
Search();
}
}
//这是我页中的一个TEXTBOX
<form id="form1" runat="server" method="post">
<asp:TextBox ID="textfield" runat="server" onkeypress="Submit();"></asp:TextBox>
</form>
我在textbox里面输入后,直接按回车,打开新页bb.aspx,但是不知道为什么本页aa.aspx会刷一下!
明明没有回发的代码啊?不解!
没必要用服务端控件<form id="form1" runat="server" method="post">
<input type='text' onkeypress="Submit();" />
</form>
按回车后就触发回发,刷新了页面
修正为:
<asp:TextBox ID="textfield" runat="server" onkeypress="onSubmit();"></asp:TextBox>
<head>
<title></title>
<style type="text/css">
body {font-size:14px}
</style>
<script>
function Search()
{
var obj7 = document.getElementById("textfield");
var tname = obj7.value;
window.open("default2.aspx?keyword=" + tname);
}
function Submit()
{
if(event.keyCode==13)
{
Search();
return false;
}
} </script>
</head>
<body>
<form id="form1" runat="server" method="post">
<input type='text' name="textfield" onkeypress="return Submit();" />
</form>
</body>
</html>
试下,按回车会自动提交表单
在TEXTBOXE后面加上<input type="text" style="display:none"/>,成这样,其余不变<form id="form1" runat="server" method="post">
<asp:TextBox ID="textfield" runat="server" onkeypress="Submit();"></asp:TextBox><input type="text" style="display:none"/>,
</form>这样就不会回发了,真是见了鬼了!
var form = document.Forms["form1"];
form.onsubmit = function(){return false};
<input type='text' onkeypress="Submit();" />
推荐
推荐
<form id="form1" runat="server" method="post">
<asp:TextBox ID="textfield" runat="server" onkeypress="Submit();return false;"></asp:TextBox>
</form>
这个我知道,但是为什么多了这么一个隐藏的INPUT,就不刷新了呢!是这个问题!后来我用EVENT.RETURNVALUE=FALSE搞定了!