一次提交表单,可以产生两个页面,但是,如何避免用户直接按回车键提交呢??

woshihuzi 2005-04-11 09:06:24
如下代码,一次提交表单,可以产生两个页面
======================================================
<html>
<head>
<title>
一次提交到两个页面
</title>
<script language="Javascript" ranat="client">
<!--
function chk_form() {
if(document.form1.str.value=="")
alert("字符串不能为空。");
else
{
document.form1.action="test.asp";
document.form1.target="_blank";
document.form1.submit();

document.form1.action="test-2.asp";
document.form1.target="_self";
document.form1.submit();
}
}
-->
</script>
</head>
<body>
一次提交到两个页面办法
<hr>
<form method="get" action="" name="form1" TARGET="_SELF">
请输入要查询的字符串: <input type="text" name="str">
<input OnClick="chk_form();" type="button" name="Submit" value="一次提交两个页面办法" >
</form>
</body>
</html>


缺点:
=====================================================
如果是在文本框中直接按回车,那么,
不管文本框是否为空,程序都显示一个新窗口打开
它自身。
=====================================================
如何避免用户直接按回车键提交呢,因为这样数据的有效性得不到检查,我希望通过按钮提交。
...全文
100 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
woshihuzi 2005-04-11
  • 打赏
  • 举报
回复
自己找到办法了:
<input type="text" name="str" onkeydown="if(event.keyCode==13)event.keyCode=9;">

属性
onkeydown="if(event.keyCode==13)event.keyCode=9;"
的作用是把回车键转化成TAB键。
这样,用户在按回车的时候,不提交(相当于按了TAB键)。

感谢楼上两位的帮助。虽然没解决问题,照样结帖。我不想让自己的任何帖子处于未结帖状态。
woshihuzi 2005-04-11
  • 打赏
  • 举报
回复
办法不行啊。我试过了。
poonzsp 2005-04-11
  • 打赏
  • 举报
回复
up
ttt2 2005-04-11
  • 打赏
  • 举报
回复
<form method="get" action="" name="form1" TARGET="_SELF" onsubmit="chk_form()">

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧