您如何在视图中引用json数据?

时间:2014-01-28 18:17:29

标签: jquery ruby-on-rails ruby json

我想在我的视图中添加从我的控制器返回的'msg'数据

在我的控制器中我有:

render json: { notice: 'Reply sent.', from: @message.from, msg: @message.content }

在我看来,我有

<script>
$('.new_short_message').bind('ajax:success', function() {
        $( this ).before( '<p>message</p>' );
    });
</script>

如何引用'msg'数据代替'<p>message</p>'

1 个答案:

答案 0 :(得分:1)

ajax:success处理程序的回调函数有三个参数(xhrdatastatus),其中data包含传输的数据。它是一个普通的JSON对象,因此您可以使用data.noticedata.from等直接访问内容。例如:

$('.new_short_message').bind('ajax:success', function(xhr, data, status) {
  $(this).before('<p>'+data.msg+'</p>');
});