【发布时间】:2013-01-29 03:52:59
【问题描述】:
看起来很简单,但我的部分没有使用 ajax 在视图中呈现(dash.html.erb)。
routes.rb
match "users/dash" => "users#dash"
用户控制器
def dash
respond_to do |format|
format.js
end
end
dash.html.erb
<div id= "mydiv">This view is not shown using ajax.</div>
dash.js.erb
$('#mydiv').html('<%= raw escape_javascript render("cart_payment") %>');
我的部分-_cart_payment.html.erb
<p>This is a partial.</p>
更新:
users/index.html.erb
<script type= "text/javascript">
$.ajax({
url: "users/dash",
data: {
//params if needed
}
});
</script>
请注意,我在浏览器中调用-users url,因为 ajax 是从这里调用的。
这是不正确的方式还是我错过了什么?
【问题讨论】:
-
无论你用什么来调用 dash 都必须有一个 data-remote="true" 。即链接或按钮或表单
-
如果您在浏览器中调用
/controller_name/dash.js会发生什么? -
@Magicmarkker- 抱歉,我更新了问题以包含使用 ajax 的调用。
-
@davidb - 这样做,我得到
$('#mydiv').html('<p>This is a partial.<\/p>');
标签: ruby-on-rails ruby ruby-on-rails-3 jquery ruby-on-rails-3.2