0

我一直在尝试使以下工作:我希望 jQuery 函数在单击具有 ID 的某个 div 时加载特定的部分。我希望这个 ID 成为我与部分一起使用的 :locals 的一部分。

$("#main>.dots").live("mousedown", function(e) {
        $num = 8;
        $("#main").append("<%= escape_javascript(render :partial => 'projects/show',     :locals => {:i => "#{$num}"}).html_safe %>")
    })

到目前为止,我还没有把它弄好。上面的代码返回“为 nil 调用的 id”,因此 $num 没有正确地提供给 escape_javascript 函数。当我用整数 8 替换 $num 时,它可以工作(在 <% %> 标签之间)。

有什么解决办法吗?

语法:

$("#main").append("<%= escape_javascript(render :partial => 'projects/show', :locals => {:i => 8}).html_safe %>")

工作,所以这就是我想去的方式,除了 8 是 jQuery 的当然

4

1 回答 1

0

我已经解决了这个问题

var dataString = "projectid=" + $(this).attr("id") + "&left=" + $(this).css("left") + '&top=' + $(this).css("top");
    $.ajax({
        url: "/projects/show",
        type: "get",
        data: dataString,
        success: function(data) {
            $("#main").append(data)
        }
    });

所以基本上我使用了 AJAX,所以我可以将 POST 数据发送到正确的控制器操作:)

于 2013-01-16T16:30:44.593 回答