HTML 之 Web页面表单form中只有一个input的text元素,按回车默认提交

  WEB开发中,如果页面的 form 中只有一个input元素,在该input元素的输入框中按回车(注:此时并没有写对应的onkeydown等事件处理),则浏览器会默认提交表单,请看如下代码:

<html>
    <head>
       <title>页面中只有一个input元素时默认提交表单</title>
    </head>
    <body>
         <form action="http://www.baidu.com" name="myform" method="get">
            <input name="contenta" type="text" value="回车提交" /></br>
         </form>
    </body>
</html>  

那么如何禁止呢,禁止方法有两种:

[1]只有一个时发生,可以在form中添加一个隐藏的input元素,修改后的代码如下:

<html>
    <head>
       <title>页面中只有一个input元素时默认提交表单</title>
    </head>
    <body>
         <form action="http://www.baidu.com" name="myform" method="get">
            <input name="contenta" type="text" value="回车提交" /></br>
            <input type="text" style="display:none">
         </form>
    </body>
</html>  

[2]禁用form的onsubmit事件:

<html>
    <head>
        <title>页面中只有一个input元素时默认提交表单</title>
    </head>
    <body>
         <form onsubmit="return false;"action="XXX" name="myform" method="get">
            <input name="contenta" type="text" value="Enter To Submit" /></br>
         </form>
    </body>
</html>
<script type="text/javascript">
function update() {
  document.forms[0].action="${contextPath}UpdateAction.action";
  document.forms[0].submit();
}
</script>
时间: 2024-08-26 08:25:53

HTML 之 Web页面表单form中只有一个input的text元素,按回车默认提交的相关文章

form中只有一个input刷新页面问题

方法1: 在文本域元素中加入onkeydown或者onkeypress事件,判断若用户点击了回车就阻止默认行为 <body> <form> <input type="text" onkeypress="if(event.keyCode==13 || event.which==13){return false;}" /> </form> </body> 方法2: 在form中再加入一个隐藏的文本域 <i

asp页面表单提交在后台不能获取问题

今天碰到一个奇葩的问题,asp页面表单提交后,有一个文本框<input type="text" name="phone" id="phone" />在后台获取不了, 这个标签在form表单内,也有name属性,但是在后台就是获取不了这个标签的值,而其他的文本框.复选框都可以获取到,这可就奇怪了! 几经周折,终于找到了原因,原来我在提交表单的时候,name = "phone"这个标签此时在一个javascript事件

JavaScript学习——完成注册页面表单校验

1.步骤分析 第一步:确定事件(onsubmit)并为其绑定一个函数 第二步:书写这个函数(获取用户输入的数据<获取数据时需要在指定位置定义一个 id>) 第三步:对用户输入的数据进行判断 第四步:数据合法(让表单提交) 第五步:数据非法(给出错误提示信息,不让表单提交) 问题:如何控制表单提交? 关于事件 onsubmit:一般用于表单提交的位置,那么需要在定义函数的时候给出一个 返回值. onsubmit = return checkForm() 2.完成注册页面表单校验(基于HTML&a

使用JQuery.Validate插件来校验页面表单有效性

使用JQuery.Validate插件来校验页面表单有效性?1. [代码] 常见的注册表单元素 <form action="#" method="post"  id="regist">     <table cellpadding="0" cellspacing="0" border="0" class="form_table">      

按下回车默认提交form表单问题

最近开发中碰到一个问题,项目中有几个列表展示页面,允许用户通过查询条件模糊查询数据.用户录入关键字后点击回车会调用查询方法根据关键字查询,原先功能没有问题,但是最近发现在查询输入框中按下回车会直接刷新页面不调用查询方法.检查发现有人在查询模块新增了一个form表单,找了很多和form表单相关资料才发现当form表单内只有一个type="text"类型的<input>标签时按下回车默认会提交form表单.解决方法很简单就是在form表单内新增一个隐藏的type="t

009实现一个算法来删除单链表中的一个结点,只给出指向那个结点的指针(keep it up)

呵呵,这个题不能直接删除已知的结点,因为是单链表,不知道前驱,只知道 后继结点,直接删除会使链表断开.不过我们可以删除已知结点的后继结点, 把后继结点的值赋值给已知结点. #include <iostream> struct Node { int data; Node* next; }; bool removeNode(Node* vNode) { if (vNode == NULL || vNode->next == NULL) return false; Node* pNext =

实现一个算法从一个单链表中返回倒数第n个元素(keep it up)

我们维护两个指针, 它们之间的距离为n.然后,我将这两个指针同步地在这个单链表上移动,保持它们的距离 为n不变.那么, 当第二个指针指到空时,第一个指针即为所求. #include <iostream> struct Node { int data; Node* next; }; void initList(Node* vNode) { for (int i=0; i < 20; ++i) { Node* TempNode = new Node; TempNode->data =

【php页面表单提交】form校验后再提交,非ajax提交

form表单校验后,在执行提交动作: <form method="post" action="{:U('Custom/addmsg')}" id="massage"> <ul> <li><input name="name" maxlength="18" type="text" placeholder="您的姓名" class=

使用dreamweaver设计常用注册页面表单验证

网页注册页面验证设计,必须使用dreamweaver的表单来实现,或者spry库. 这里介绍的第一个是最原始的表单验证方式,即没有使用即时验证,需要点击提交按钮才进行验证,也没有使用正则表达式或者AJAX验证,也或者是JQuery的验证,不过这么多验证方式接着第一个后面都会写出来的 1.最原始的注册验证方式,需要通过点击提交按钮才验证 先上图 代码如下: Html代码 复制代码 收藏代码 1. 2. 3. 4. 5.无标题文档 6. 8. 9. 11. 219. 注册步骤: 1.填写信息 > 2