博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于form.submit()不能提交表单的错误原因
阅读量:4287 次
发布时间:2019-05-27

本文共 1620 字,大约阅读时间需要 5 分钟。

来源:

直接上代码把:

1: 
2:     

会员注册

3:     
4:         
5:             
6:                 
请认真填写以下内容
7:                 
8:                     用户名:
9:                 
10:                 
11:                     密码:
12:                 
13:                 
14:                     确认密码:
15:                 
16:                 
17:                     选择头像
18:                     
19:                     
20:                 
21:                 
22:                     验证码:
23:                     
24:                         code
25:                         换一张
26:                     
27:                 
28:                 
29:                     
30:                     
31:                 
32:             
33:         
34:     
35: 

表单数据提交到本页面,下面是js处理

1: /*注册表单提交*/
2: function formDeal()
3: {
4:     var btnSubmit = document.getElementById('submit');
5:     var formId = document.getElementById('registerForm');
6:     btnSubmit.onclick = function()
7:     {
8:         //表单的submit()方法不能提交表单
9:         formId.submit();
10:     }
11:
12: }

如果表单提交,在本页面有一段提示信息

1: if(!empty($_GET['action']) && $_GET['action'] == 'register')
2: {
3:     echo '你提交了数据';
4:     exit();
5: }

结果是测试了许久都没有看到提示信息,以为是代码错了或者方法写错了,仔细核对,在结果官方文档,确认没有出错。

formId.submit()不能提交,就暂时只好把btnSubmit的type改为submit

1: this.type="submit"

在网上查了资料,原因归结为两点:

1、表单中不能有name=”submit” 的标签

2、表单中不能缺少《enctype=”multipart/form-data”》

经测试,此两点乃荒谬,并没有解决我的问题(或许是我的问题环境不一样)

后来,以为论坛的坛友建议我把注册按钮的ID改个名字,不用submit。改正之后,表单正常提交,提示信息出现。

最后总结:button的id不要设置为submit,否则可能会引起混淆,导致表单的submit()方法不能提交表单。在命名ID时,名字最好不要和现有的api在名称上重复,避免不必要的烦扰。

下一篇:

转载地址:http://yztgi.baihongyu.com/

你可能感兴趣的文章
string 序列化
查看>>
va_start(),va_end()函数应用
查看>>
crontab命令
查看>>
State Threads——异步回调的线性实现
查看>>
va_start va_end
查看>>
共享内存,共享缓冲区 一对多
查看>>
无锁队列的实现
查看>>
CAS原子操作实现无锁及性能分析
查看>>
太上老君为何不能将孙悟空炼化
查看>>
Linux 互斥锁、原子操作实现原理
查看>>
搭建简单hls直播测试服务
查看>>
共享内存的数据同步
查看>>
LVS-入门试用
查看>>
Cache和Buffer的区别
查看>>
50个sql语句
查看>>
MYSQL sql 语句性能分析
查看>>
C++操作Redis数据库
查看>>
python yield用法
查看>>
python pipe模块用法
查看>>
安装完 MySQL 后必须调整的 10 项配置
查看>>