我已经从ajax call
/assets/js/myfile.js
发起了@myVar = ModelClass.create(params)
respond_to do |format|
format.js
format.html
end
点击控制器并且在我的控制器操作中
myaction.js.erb
这样我就可以使用我的$("#box_div").append('<%= escape_javascript(render :partial => "box.html.erb") %>');
文件功能。我有如下
@myVar
要记住的是,我可以在js.erb
文件中访问partial view
变量并显示数据。在此点之后呈现ajax success function
并且所有部分标记/值都会在$.post("/conversations", { sender_id: sender_id, recipient_id: recipient_id }, function (data) {
**//I want id value sent back from js.erb file here**
console.log(data);
});
中回发。由于局部渲染,它看起来像一个小的html页面。 (一切都是正常行为
现在我想要的是我想传回一个特定的参数,如id:&lt;%= @ myVar.id%&gt;
my /assets/js/myfile.js
{{1}}
答案 0 :(得分:1)
你可以尝试这种方式只是创建粗糙的骨架:
<强> myfile.js 强>
myvar_id = $("#myvar").val();
$.post("/conversations", { sender_id: sender_id, recipient_id: recipient_id }, function (data) {
//I want id value sent back from js.erb file here
console.log(data);
});
<强> Js.erb 强>
$("#box_div").append('<%= escape_javascript(render :partial => "box.html.erb") %>');
<强> _box.html.erb 强>
<input type="hidden" id="myvar" value="<%= @myvar.id %>">