首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用jquery提交表单不会以远程方式提交: true rails 4.2

问使用jquery提交表单不会以远程方式提交: true rails 4.2
EN

Stack Overflow用户
提问于 2016-08-03 22:36:28
回答 3查看 1.6K关注 0票数 1

当用户单击按钮时,我必须提交一个表单,因为我在该按钮上使用了onclick JS函数调用。

在该函数中,我只需使用.submit()函数提交所需表单。

我使用JS函数,

代码语言:javascript
复制
$('#form_id').submit()

另外,在form_tag中,我使用了:remote=>true。已使用:method=> "post"将HTML方法更改为post。

控制器还具有带format.js块的适当respond_to块。

视图文件具有正确的.js.erb文件。

但每当我单击该按钮时,它就会被当作HTML处理。如果我手动单击表单的submit按钮,它将被成功处理为JS。

如何解决这个问题??

EN

回答 3

Stack Overflow用户

发布于 2018-09-13 07:40:23

代码语言:javascript
复制
form = document.querySelector('#form_id');
form.dispatchEvent(new Event('submit', {bubbles: true})); // you can specify more options in `Event()` for reliability across different browsers.

或

代码语言:javascript
复制
form = document.querySelector('#form_id');
Rails.fire(form, 'submit');

找到答案here

票数 2
EN

Stack Overflow用户

发布于 2021-02-26 06:32:05

您需要使用requestSubmit,而不是使用jquery submit (或纯javascript submit

https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/submit

本文描述了submit ( jQuery使用的)和requestSubmit (您需要使用它通过javascript提交让rails远程表单工作)之间的区别。

票数 0
EN

Stack Overflow用户

发布于 2016-08-03 22:42:57

什么是远程=> true?

如果在生成期间在表单中指定:remote => true,这意味着表单是远程提交的。

那么form.submit()又如何呢?

不需要使用jQuery代码来提交。您的应用程序理解表单必须远程提交。

我希望它能对有所帮助

票数 -4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38746642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档