我正在开发一个Rails项目,其中我有一些奇怪的情况,需要将模板(通过ajax)加载到现有页面中,并使用来自从该页面发送的Ruby数组。这是我的例子:通过Ajax和解析传递Ruby数组
文章页:
<div class="article"></div>
<% @article = my_article_array.to_json %>
<script type="text/javascript" charset="utf-8">
$(document).ready(function() {
$.ajax({
type: 'post',
data: { 'article' : '<%= @article %> },
url: '/articles/show',
success: function(result) {
$(".article").html(result);
}
});
});
</script>
控制器:
def show
@article = JSON.parse(params[:article])
redner :template => false
end
模板:
<h1><%= @article.title %></h1>
<p><%= @article.body %></p>
这导致Rails的错误:“JSON.parse意外的标记错误”。
我已经尝试了几十个不同的场景,但是先将数组转换为JSON,然后再解码一次,似乎是最有意义的。无论如何,我的尝试都没有奏效。
任何见解将不胜感激!
你可以给我们发送到你的应用程序的JSON吗? – 2011-06-04 05:53:22