首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用ajax呈现部分

使用ajax呈现部分
EN

Stack Overflow用户
提问于 2013-02-13 14:54:09
回答 1查看 419关注 0票数 0

这看起来很简单,但我的部分没有使用ajax在视图(dash.html.erb)中呈现。

routes.rb

代码语言:javascript
复制
match "users/dash" => "users#dash"

用户控制器

代码语言:javascript
复制
def dash
     respond_to do |format|
    format.js
  end
   end

dash.html.erb

代码语言:javascript
复制
<div id= "mydiv">This view is not shown using ajax.</div>

dash.js.erb

代码语言:javascript
复制
$('#mydiv').html('<%= raw escape_javascript render("cart_payment") %>');

我的部分- _cart_payment.html.erb

代码语言:javascript
复制
<p>This is a partial.</p>

更新:

users/index.html.erb

代码语言:javascript
复制
<script type= "text/javascript">

$.ajax({
  url: "users/dash",
  data: {  
  //params if needed

  }
});

</script>

请注意,我在浏览器中调用- users url,因为ajax是从这里调用的。这是不正确的方式还是我遗漏了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-13 15:10:37

当您远程调用dash方法时,它实际上正在执行$('#mydiv').html...代码。问题是,您的index.html.erb文件首先没有要更新的<div id='mydiv'>

如果用这个替换index.html.erb,它应该可以工作:

代码语言:javascript
复制
<div id='mydiv'></div>

<script type= "text/javascript">
  $.ajax({
    url: "users/dash",
    data: {  
    //params if needed
    }
  });
</script>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14856308

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档