这看起来很简单,但我的部分没有使用ajax在视图(dash.html.erb)中呈现。
routes.rb
match "users/dash" => "users#dash"用户控制器
def dash
respond_to do |format|
format.js
end
enddash.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是从这里调用的。这是不正确的方式还是我遗漏了什么?
发布于 2013-02-13 15:10:37
当您远程调用dash方法时,它实际上正在执行$('#mydiv').html...代码。问题是,您的index.html.erb文件首先没有要更新的<div id='mydiv'>。
如果用这个替换index.html.erb,它应该可以工作:
<div id='mydiv'></div>
<script type= "text/javascript">
$.ajax({
url: "users/dash",
data: {
//params if needed
}
});
</script>https://stackoverflow.com/questions/14856308
复制相似问题