加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails-3 – :remote => true / data-remote在通过aj

发布时间:2020-12-17 02:14:44 所属栏目:百科 来源:网络整理
导读:在我的Rails应用程序中,我有一个使用jQuery加载方法通过Ajax加载的表单. function load_sales_form(product_id) { $("#sales_form").load("%= url_for(:action = :show_sales_form) %"/ + product_id);} 加载的表单有一个form_for标记,其中包含:remote = tr
在我的Rails应用程序中,我有一个使用jQuery加载方法通过Ajax加载的表单.

function load_sales_form(product_id) {
    $("#sales_form").load("<%= url_for(:action => :show_sales_form) %>"/ + product_id);
}

加载的表单有一个form_for标记,其中包含:remote => true选项,它确实将data-remote =“true”属性添加到表单中.

但是,当用户单击“提交标记”按钮时,不会使用Ajax提交表单.如果表单以标准的非ajax方式加载,它可以正常工作,但是在文档准备好后,表单是通过ajax加载的,不是使用ajax提交的,它提交为标准表单.

从我到目前为止所研究的情况来看,这是因为rails.js文件(其中包含允许通过ajax提交数据远程表单的内容)不会将其功能应用于通过ajax加载的html内容.

是否可以强制rails.js文件将其功能应用于通过Ajax加载的内容?

解决方法

这里的情况相同.我找到了解决方案.
不是动态加载,而是在我的情况下错误地触发提交事件.

我有一个Bootstrap模式,其中设置了data-target和href属性.这会导致.modal-body内的内容通过AJAX从href中指定的地址加载.

模态预先配备了保存按钮(在加载的表单之外),这就像这样调用提交.

$modal.find("form.loaded_form").get(0).submit(); // INCORRECT

前者只执行原始提交,但是:

$modal.find("form.loaded_form").trigger('submit'); // CORRECT

诀窍.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读