在form中,使用js动态生成input,提交表单通过ajax添加数据到数据库,无法触发ajax请求

form中隐藏五个input,点击添加按钮,通过js显示出来,在input中输入值,点击提交按钮,触发js中add()方法,通过ajax向数据库中添加数据。必须在ajax方法执行完后执行一个alert(),才能把数据加进去,否则不仅ajax。求帮助。

第1个回答  推荐于2016-09-13
最好贴全代码。我觉得这个问题很费解。我没有遇到过。不过我可以跟你说一下我的思路。

我一般不太愿意用js输出表单之后再提交。性能不太好,而且容易出问题。我都是建立一个position:fixed的隐藏层,需要弹出表单的时候,通过显示与隐藏,来显示表单。并且,可以再此基础上加入一个全屏的position:fixed的隐藏层,用以模式化窗口,设置透明度为30% 这样页面除了这个表单,其它的部分不可操作。可以一次性显示这两个层,关闭的时候,再隐藏这两个层。(登陆框的常见办法) 我的做法一般是这样的。追问

写错了,不是动态生成,是原来就有,隐藏了,点击按钮显示出来,再填值,提交。提交触发 add() ,js 中add(),不进ajax()。debug加断点能进,或者在后面添加一个alert()也进。

追答

测试程序了吗? 程序输出测试字符串,可以显示出来吗? 也就是在执行成功之后,你直接alert(data); 然后在程序里随意打印一个字符串。 看看是否正确的执行了。

我不太常用ajax方法,我喜欢用get或者post 。这个就是比较繁琐,而且js也没有特别号的调试工具,只能alert大法,逐行测试。

追问

是我写错了,用form,submit提交,又在按钮添加了js的function。不添加alert就走的form,form中action为空,所以没法执行,有alert走的是ajax,就可以添加进数据库了

本回答被提问者采纳
第2个回答  2014-07-07
你是说,必须先alert,之后再往数据库插入数据?
那就先去alert,之后再去进行ajax操作就行了。
疑问:alert干嘛用的?是提示作用吗?那为什么不用confirm呢?追问

相当于打印语句System.out.pringln();查看程序执行到某一位置的,或某一位置某个值

第3个回答  2014-07-07
有截图么,什么alert? 是不是你浏览器设置的有问题追问

就是浏览器弹出框,不加下面这个就不进ajax

我在学习ajax数据到元素的时候,发现由ajax添加的数据无法被点击事件响应...
因为你添加的ajax数据在js执行之后,也就是说$('.test').click这个方法在js执行之后没有被绑定在click上面。这个时候需要动态绑定,把事件绑定在js执行完成之前就存在的元素上面,例如下面的例子我绑定在table上面,然后用on()来绑定click,on其实可以接受三个参数,如果第二个是字符串的话,就是动态绑...

ajax没办法阻止表单提交怎么办?ajax验证失败表单也提交了!
success:function(data){\/\/code}这里的函数是ajax请求成功之后执行的,你在这里放表单验证肯定是永远不能阻止表单提交的把这里面的代码提到$.ajax()前面即可。。。而且,我感觉你这里提交到后台是为了验证数据有效性,我觉得你可以现在前台用js验证一遍,成功后进行ajax请求,提交数据到后台,后台再验证一次...

form.js里用Ajax无法触发beforeSubmit 前端是用Botstrapt写的_百度知 ...
form.js里用Ajax无法触发beforeSubmit 前端是用Botstrapt写的  我来答 分享 微信扫一扫 网络繁忙请稍后重试 新浪微博 QQ空间 举报 浏览10 次 可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。 form.js ajax beforesubmit botstrapt 搜索资料 本地图片 图片链接 代码 提交...

js 通用表单提交2-submit的控制和ajax提交
关于ajax提交,当form的action为空时,可以通过JavaScript设置URL,如`$.ajax({url: 'your-url'})`。至于data的组织,通常使用`serialize()`方法,它会自动处理key\/value格式的序列化。可能需要进行额外的编码或格式调整,具体取决于后端的要求。以上代码示例展示了如何在JavaScript中控制表单提交,包括阻止...

js\/Ajax\/ASP利用createElement 自动生成表单,无刷新上传。50高分,可以...
所以弹出一个ajax窗口,然后在这个ajax窗口里面加载表单,发送数据,就这样!最近的一个项目,里面大量用到了ajax窗口,我们选择的是prototype-window 。ajax窗口太多了,楼主自己去网上找吧,推荐一个网址:http:\/\/www.open-open.com\/ajax\/Window.htm 这里面介绍的ajax窗口非常多,楼主慢慢看吧。

JS如何实现自动提交表单内容但不跳转该页面
请求数据分为两种:表单提交(form结构,用submit)ajax异步请求 你要明白,第一种形式会跳转,第二种不会.既然你使用了submit提交,就一定会跳转的.我说用submit会提交,我可没说form会提交啊.用form结构可以,但是你要声明阻止默认提交.然后用ajax进行提交.总之核心,你不想跳转,就用ajax.具体怎么用,一条...

使用jquery.form.js实现文件上传及进度条前端代码
ajax的表单提交只能提交data数据到后台,没法实现file文件的上传还有展示进度功能,这里用到form.js的插件来实现,搭配css样式简单易上手,而且高大上,推荐使用。需要解释下我的结构, #upload-input-file 的input标签是真实的文件上传按钮,包裹form标签后可以实现上传功能, #upload-input-btn 的button...

如何在 form 表单提交后实现页面不跳转
最简单的就是给 form 增加 onsubmit 参数,异步提交 比如调用 js 函数用题主所述的 jquery ajax 方法:<script> function PostData() { .ajax({ type: "POST",url: "post.go",data : "",success: function(msg) { } });return false;} <\/script> <form onsubmit="return PostData()">...

Js表单提交
(4) 如果在 form ,我们使用了 type=''button 属性,但是还是需要提交表单,这是可以使用ajax来提交,好处是可以自己控制提交,并且页面不会跳转 (5)若是使用默认提交的方法,且提交之前验证表单,方法看下面 (6) 若是使用了 type='button' 属性,但是还是想实现默认提交的方式怎么办? 看下面 (7)...

如何用js提交表单如何用js提交表单数据库
提交按钮用于向服务器发送表单数据,数据会发送到表单的action属性中指定的页面。r设置提交按钮上显示的文字。rtype="button"普通按钮rbutton类型的只是一个普通的按钮,而submit有一个提交的作用,在没有加js代码的情况下,button只是个装饰。rtype="image"提交按钮rimage类型的input也是具有一个提交的作用...

相似回答