使用自定义 ajax 请求渲染 js 部分(而不是远程:true)

Rendering js partial with custom ajax request (instead of remote: true)

本文关键字:true 部分 ajax 自定义 请求 js      更新时间:2023-09-26

我不想使用 jQuery,所以我使用以下代码制作自己的 ajax 请求:

var xhReq = new XMLHttpRequest();
xhReq.open("GET", href, false);
xhReq.send(null);
var serverResponse = xhReq.responseText;

我通过向params添加format: "js让 Rails 知道它是 JS 格式。

respond_to块似乎运行良好,但我不知道如何让 js-view 中的代码执行。我正在尝试一个简单的alert("hello");但没有任何反应。

Do eval(serverResponse);

或者使用href创建一个script元素,而不是执行 XHR 请求,这可能对性能更好。

var scrpt = document.createElement("script");
scrpt.src = href;
document.body.appendChild(scrpt);