AJAX调用后不执行Javascript代码
这是我的“链接”: 这就引出这里:AJAX调用后不执行Javascript代码,javascript,jquery,ruby-on-rails,ruby,ajax,Javascript,Jquery,Ruby On Rails,Ruby,Ajax,这是我的“链接”: 这就引出这里: function add_trending(car_id) { jQuery.ajax({ url: "/cars/add_car", type: "GET", data: {"car_id" : car_id}, dataType: "html" }); } 在控制器中: def add_car @car = Car.find(params[:car_id]) ... respon
function add_trending(car_id) {
jQuery.ajax({
url: "/cars/add_car",
type: "GET",
data: {"car_id" : car_id},
dataType: "html"
});
}
在控制器中:
def add_car
@car = Car.find(params[:car_id])
...
respond_to do |format|
format.js
end
end
和添加_car.js.erb:
alert("YES");
但警报窗口不会弹出。当我查看日志时,我看到以下内容:
Rendered cars/add_car.js.erb (0.0ms)
javascript只是呈现,而不是基于日志执行。这怎么可能
谢谢您是否查看了客户端的网络流量?我猜您正在将此信息发送给客户端,但它不知道如何处理此结果。事实上,如果这是jQuery中的整个处理程序,那么它不会对响应做任何事情。在传递给
jQuery.ajax
的options对象中需要一个成功和/或失败处理程序,或者需要在它返回的承诺中附加一个。换言之,您可能正在获取数据,但没有对其执行任何操作。如果ajax请求返回javascript,则必须设置数据类型:script
或使用$.getScript
函数
在这种情况下,您没有任何成功回调函数。能否显示来自ajax文件的concreet响应?
Rendered cars/add_car.js.erb (0.0ms)