Jas*_*ost 26 ajax jquery post document-ready ruby-on-rails-3
我有一个custom.js文件,其中有几个元素,其中包含click和其他绑定方法.整个文件封装在document.ready()中,一切正常.但是,当我做一个AJAX帖子时,显然document.ready()永远不会再为当前页面触发.无论如何我可以再次触发document.ready()或者我需要让命名函数中的所有内容从create.js.erb中调用它们吗?
Ben*_*Ben 35
您可以随时将所有内容放在一个函数中(命名为loadfunction或其他),并在文档加载时调用该函数,并在加载ajax时再次调用该函数.虽然它是一个被黑客攻击的解决方案,但它应该运行得很好.
所以然后
把它$(document).onready(function () { 和它的末端括号之间的所有内容}放在它的function OnloadFunction () {结尾处}.然后把$document.onready(OnloadFunction);
示例:你有
$(document).ready(function () {alert("test");});
Run Code Online (Sandbox Code Playgroud)
它会变成:
function OnloadFunction ()
{
alert("test");
}
$(document).ready(OnloadFunction);
Run Code Online (Sandbox Code Playgroud)
然后你可以随时打电话OnloadFunction.
Ken*_* Mc 19
结合Ben和fotanus的答案,我创建了以下模式:
$(document).ready(function () {
AjaxInit()
});
$(document).ajaxComplete(function () {
AjaxInit()
});
function AjaxInit() {
alert("test");
}Run Code Online (Sandbox Code Playgroud)
fot*_*nus 18
每次ajax调用后都会触发一个事件.它被称为ajaxComplete.
$( document ).ajaxComplete(function() {
$( ".log" ).text( "Triggered ajaxComplete handler." );
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
46898 次 |
| 最近记录: |