gpt4 book ai didi

javascript - Ruby on Rails - AJAX 分页中的 JQuery 未运行

转载 作者:行者123 更新时间:2023-12-03 11:55:10 25 4
gpt4 key购买 nike

嘿,大家好,我正在尝试实现 AJAX 分页,并且我一直在研究 Railscasts 示例。

我在 application.js 中有这段代码

$(function() {
$("#entidades .pagination a").live("click",function(){
alert("ajax!");
$.getScript(this.href);
return false;
});
});

这是 View :

<div id="entidades"><%= render "page" %></div>

部分是一个标准,每个底部都有 will_paginate 链接。

我创建了index.js.erb

alert("ajax!");
$("#entidades").html("<%= escape_javascript(render("page")) %>");

每当我单击链接时,都不会引发警报消息。我无法让它工作。有人知道问题所在吗?

最佳答案

正如评论中提到的,问题可能与您调用 Ajax 调用的方式有关:

#app/assets/javascripts/application.js
$(document).on("click", "#entidades .pagination a", function(e){
e.preventDefault();
$.getScript(this.href);
alert("ajax");
});

您可能还想了解 Turbolinks 的 Angular 色在这。使用 JS 进行 Rails 开发的主要问题之一是应用程序的 JS 调用将被 Turbolinks 中断。

Turbolinks 基本上加载 <body>新页面,留下<head>完好无损的。这意味着如果您要使用类似 $(document).ready 的内容和$(function(){ ,你必须将它们包裹在 Tuborlinks 中- 兼容调用(通常是 Turbolinks events ):

#app/assets/javascripts/application.js
var your_function = function() {
// calls here
};
$(document).on("page:load ready", your_function);

关于javascript - Ruby on Rails - AJAX 分页中的 JQuery 未运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25640282/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com