Jquery 工作台和导轨3
我正在尝试将jeditable与我的rails 3应用程序一起使用。我想在线编辑一些字段。 实际上,它在我的客户端工作,但数据在我的应用程序中没有更新 你能看一下吗?提前谢谢 我的看法是:Jquery 工作台和导轨3,jquery,ruby-on-rails,jeditable,ruby-on-rails-3,Jquery,Ruby On Rails,Jeditable,Ruby On Rails 3,我正在尝试将jeditable与我的rails 3应用程序一起使用。我想在线编辑一些字段。 实际上,它在我的客户端工作,但数据在我的应用程序中没有更新 你能看一下吗?提前谢谢 我的看法是: <dt>Overview :</dt> <dd class="edit_textfield" id="<%= @project.id %>" name="overview"><%= @project.overview %></dd> m
<dt>Overview :</dt>
<dd class="edit_textfield" id="<%= @project.id %>" name="overview"><%= @project.overview %></dd>
my application.js:
$(".edit_textfield").each( function() {
$(this).editable('update', {
type : 'textarea',
cancel : 'Cancel',
submit : 'OK',
indicator : 'Saving...',
tooltip : 'Click to edit...',
rows : 10,
method : "put",
submitdata : {id: $(this).attr('id'), name:$(this).attr('name') }
});
});
多亏了kschaper,它才起作用 但当我对页面中的两个字段使用jeditable并编辑它们时,只保存了一个字段。 Rails认为第二个值是0 我认为问题来自我的控制器:
def update
@project = Project.find(params[:id])
@project.name = params[:name]
@project.overview = params[:overview]
@project.save
respond_to do |format|
format.js #{ render :text => params[:value] }
end
end
你有什么线索吗?我研究rails的时间不长,但我认为产品需要@ 像这样:
def update
@project = Project.find(params[:id])
overview = params[:value]
@project.save
render :text => params[:value]
end
也许…概述是项目的一个属性吗?那就应该是
@project.overview = params[:value]
仅供参考——ID属性必须以字母开头。您视图中的内容无法通过验证。您需要在模板中预先添加一些文本,然后在application.js中将其删除,然后再将其发送到提交数据中。谢谢rainisic,但它仍然是一样的;-)完全不相关,但绝地表是个很棒的名字;)
@project.overview = params[:value]