javascript – 如何在Rails 4中在没有刷新的情况下在页面上提交表单和更新元素

我在尝试做一些我认为相当简单的事情时遇到了很多麻烦.

我有一个项目列表,比方说,todos.在该列表的底部,我有一个文本字段,我在其中添加新项目到该列表.我想这样做,以便新项目动态地添加到该列表的底部,而无需像聊天窗口那样刷新整个页面.

我将提交表单设置为remote:true并且它成功提交而不重新加载页面,但我不能同时将新项目显示在列表的底部.我必须刷新页面才能看到更改.

我尝试了一些我在SO上找到的不同方法(这里不乏类似的问题)和网络,甚至是一个名为Sync的宝石,但每个都有自己的错误和问题,我无法工作正常.他们每个人都可能是自己的SO问题.所以我要问:是否有一个“配方”肯定会在Rails 4中成功实现这一点?

解决方法

让我们说,现在你有一个用户表单提交,
<%=form_for @user,remote: true%><%end%>

你还有一个控制器,

UsersController

在你的控制器中,你有一个功能,

def create
  #something
end

这是形式.

你唯一需要的是修改像这样的功能

def create
  #something
  respond_to do |format|
    format.js
    format.html
  end
end

然后在你的视图中,在view / users /目录下,创建一个create.js文件,在文件中,你可以执行js动作,比如获取新记录,并将新记录追加到用户列表中.

参考:

http://edgeguides.rubyonrails.org/working_with_javascript_in_rails.html#form-for

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


kindeditor4.x代码高亮功能默认使用的是prettify插件,prettify是Google提供的一款源代码语法高亮着色器,它提供一种简单的形式来着色HTML页面上的程序代码,实现方式如下: 首先在编辑器里面插入javascript代码: 确定后会在编辑器插入这样的代码: <pre
这一篇我将介绍如何让kindeditor4.x整合SyntaxHighlighter代码高亮,因为SyntaxHighlighter的应用非常广泛,所以将kindeditor默认的prettify替换为SyntaxHighlighter代码高亮插件 上一篇“让kindeditor显示高亮代码”中已经
js如何实现弹出form提交表单?(图文+视频)
js怎么获取复选框选中的值
js如何实现倒计时跳转页面
如何用js控制图片放大缩小
JS怎么获取当前时间戳
JS如何判断对象是否为数组
JS怎么获取图片当前宽高
JS对象如何转为json格式字符串
JS怎么获取图片原始宽高
怎么在click事件中调用多个js函数
js如何往数组中添加新元素
js如何拆分字符串
JS怎么对数组内元素进行求和
JS如何判断屏幕大小
js怎么解析json数据
js如何实时获取浏览器窗口大小
原生JS实现别踩白块小游戏(五)
原生JS实现别踩白块小游戏(一)