0
        $.ajax({ 
        type: "GET",
        dataType: 'script', 
        url: '/admin/my_page/'+mypage_id+'/pages/show_page',
        style : "inherit",
        dataType: 'script',                                                         
        data: "submitcheckdata="+mypage_id,
        complete: function() { 

        }            
  });

有两个问题:

  • 我如何从我的页面控制器中获取变量并传递给 page.js 文件?如果我有身份证,
  • 那么我如何使用ajax生成动态url。?
4

2 回答 2

1

您可以在视图中将其定义为 js 变量

<script>
  var mypage_id = <%= @page.id %>;
</script>
于 2012-08-17T07:02:37.990 回答
0

您必须在 HTML 中包含您的 JS(我将在示例中使用 HAML)

    $.ajax({ 
    type: "GET",
    dataType: 'script', 
    url: "/admin/my_page/#{mypage_id}/pages/show_page",
    // ^ Note the use of double quotes here.
    style : "inherit",
    dataType: 'script',                                                         
    data: "submitcheckdata=#{mypage_id}",
    complete: function() { 

    }            });

有时我觉得将 HTML 和 JavaScript 放在一起有点难看。这就像把你的甜点和你的晚餐混合在一起。所以我把它作为一个单独的部分包括在内,特别是如果你有很多依赖 Rails 的 JS。

我之前使用过的另一种技术是我发送了一个初始 AJAX 请求,该请求将检索我需要什么动态内容来生成第二个有效的 AJAX 请求,例如你所拥有的。

于 2012-08-17T08:35:50.830 回答