如何从我返回的jQuery Ajax数据中获取Rails变量?

前端之家收集整理的这篇文章主要介绍了如何从我返回的jQuery Ajax数据中获取Rails变量?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我在我的Rails应用程序中的页面中有一个Ajax请求,如下所示:

$.ajax({
 type: 'POST',url: '/users/create/',data: "screen_name=<%=@user.screen_name%>",success: createSuccessHandler,error: createErrorHandler,complete: hideLoadingImage
});

目前,该行动的回应是:

respond_to do |format|
  format.js  { render :text => @user}
  format.html { redirect_to @user }
end

create动作工作正常,但如何在我的success方法获取返回值(数据),这样我可以做这样的事情?

function createSuccessHandler(data) {

    $("#div1").append(data.value1); 
    $("#div2").append(data.value2); 

}

基本上我试图将数据分成不同的变量.

最佳答案
在你的控制器中返回json(例如,添加一个format.json节并请求而不是.js节).然后在您的createSuccessHandler函数中,您将执行以下操作:

var foo = eval(data);
$("#div1").append(foo.value1); 
$("#div2").append(foo.value2); 

请注意,一些javascript库(如jQuery)提供了比使用eval更安全的方式来处理json,请随意使用它们.

原文链接:https://www.f2er.com/jquery/427923.html

猜你在找的jQuery相关文章