Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在jQuery.ajax调用之后,如何从Ruby(Padrino)服务器端呈现完整视图?_Jquery_Ruby_Ajax_Padrino - Fatal编程技术网

在jQuery.ajax调用之后,如何从Ruby(Padrino)服务器端呈现完整视图?

在jQuery.ajax调用之后,如何从Ruby(Padrino)服务器端呈现完整视图?,jquery,ruby,ajax,padrino,Jquery,Ruby,Ajax,Padrino,控制器具有以下路径:(用于说明的简单示例) index.slim文件中的.ajax调用: onTestButtonClicked: function() { return $.ajax({ type: "PUT", url: "/update/" + contact_id, data: { key: value }, success: function(data) { return console.log("success");

控制器具有以下路径:(用于说明的简单示例)

index.slim文件中的.ajax调用:

onTestButtonClicked: function() {
  return $.ajax({
    type: "PUT",
    url: "/update/" + contact_id,
    data: {
      key: value
    },
    success: function(data) {
      return console.log("success");
    }
  });
}
最后,我试图完成的是让更新路径中的渲染“person/details”行替换整个视图,就像这是GET或提交的表单一样。实际成功传递的数据是一个用于验证某些信息的JSON对象,但在成功时简单地重定向窗口实际上不会做我需要的事情,也不会在成功回调中用结果数据的某些部分替换DOM的一部分


我是否遗漏了一些简单的方法来实现这一点?

来扩展JoséBarbosa的评论:
成功回调中的数据可能包含整个页面的HTML。但是,您可能希望禁用布局:

render("person/details", layout: !request.xhr?)

如果你想替换整个页面,为什么要使用ajax?这是一个很好的问题,也是我今天早上在与这个问题斗争到很晚之后想到的一个问题。原因是我需要向服务器发送一个带有PUT的JSON对象。不幸的是,在这种情况下,这样做的原因不是可选的。我想也许我正在寻找一种从JS进行PUT或POST的方法,它不是ajax。无论如何,我认为您可以在ajax调用成功时呈现“个人/详细信息”。类似于:$('body').html(数据);也许有用。
render("person/details", layout: !request.xhr?)