单击“使用 ajax 编辑”时将部分替换为表单部分
Replacing a partial with a form partial when clicking edit with ajax
在我的rails应用程序中,我希望能够单击"编辑"以将部分显示替换/交换为表单部分。
我已经通过在编辑链接中添加 remote:true 来开始应用 ajax 和 jquery。然后我创建了一个名为 edit.js.erb 的 js 文件来调用 ajax
这是我的想法控制器:
def edit
@idea = Idea.find_by_permalink(params[:id])
end
在编辑.js.erb 我试过:
$("data-model[idea-basic-show]").hide().after("<%= j render('idea_basic_edit')%>");
但这没有用
然后我尝试:
$("#art_edit_show").replaceWith("ART EDIT PARTIAL");
确保 JS 正常工作并且确实有效
我在这里做错了什么?
看起来你走在正确的轨道上。 要始终检查的事项:
- 您是否看到任何JS错误? 检查浏览器的 JS 控制台。
- 编辑 JS 是否实际运行? 检查您的服务器日志以确保操作正在运行,如果是,请在 edit.js.erb 中输入一个
alert('Got here');
,看看是否出现。
在你的第一个例子中,jQuery选择器看起来很奇怪。 我不熟悉这种选择器的用法。 您可能需要检查一下。
第二个肯定应该做一些事情,前提是页面中有一个 ID art_edit_show可见的元素。 确保元素具有id="art_edit_show"
而不是id="#art_edit_show"
,这是一个容易犯的错误。
我喜欢使用的一种调试技术是控制台记录我尝试替换的选择器。 在 edit.js.erb 中,在替换元素之前执行以下操作:
console.debug($("#art_edit_show"));
相关文章:
- 填写表单后替换两个变量
- Django-提交表单Ajax(替换Div)
- Cake php表单助手.替换输入值
- 在表单提交将DOM的一部分替换为分部之后,我应该将ajax成功绑定到什么来使我的javascript工作
- 替换<标签>,包含的表单控件除外
- 在搜索表单中,替换空格或仅使用正则表达式的隐词和数字
- Chained或Dependent选择Zend_Form jQuery以删除或替换表单元素
- Jquery克隆表单值并替换表单字段id
- 单击“使用 ajax 编辑”时将部分替换为表单部分
- 使用 javascript 替换表单中的文本
- 如何让我的字符串替换为等于表单输入的值
- JQuery 将表单元素替换为文本
- 在提交时将 HTML 表单替换为 jQuery
- 如何在提交时使用jQuery替换表单中的信息
- 在AJAX调用期间替换表单时,警告用户未保存的表单更改
- 如何用计算替换表单输入字段
- 替换表单动作,浏览器支持
- 替换表单提交后的默认占位符
- 用javascript变量替换表单中的隐藏值
- JS用用户输入替换表单输入