在我的rails应用程序中,我希望能够单击“编辑”以替换/交换显示部分的表单部分。
我已经开始通过将remote:true添加到我的编辑链接来应用ajax和jquery。 然后我创建了一个名为edit.js.erb的js文件来调用ajax
这是我的想法控制器:
def edit
@idea = Idea.find_by_permalink(params[:id])
end
在edit.js.erb中我试过:
$("data-model[idea-basic-show]").hide().after("<%= j render('idea_basic_edit')%>");
但这不起作用
然后我尝试了:
$("#art_edit_show").replaceWith("ART EDIT PARTIAL");
确保js正常工作且确实有效
我在这里做错了什么?
答案 0 :(得分:0)
好像你走在正确的轨道上。要经常检查的事情:
alert('Got here');
并查看是否显示该操作。在你的第一个例子中,jQuery选择器看起来很奇怪。我不熟悉选择器的使用方法。你可能想检查一下。
如果页面中有一个ID为art_edit_show的元素,那么第二个肯定会做一些事情。确保元素具有id="art_edit_show"
而不是id="#art_edit_show"
,这是一个容易犯的错误。
我喜欢使用的调试技术是控制日志我正在尝试替换的选择器。在替换元素之前,在edit.js.erb中执行:
console.debug($("#art_edit_show"));