localtime.js无法处理ajax之后创建的元素

时间:2012-03-21 17:32:47

标签: javascript jquery ajax formatting localtime

我在我的应用程序上成功使用localtime.js,但现在我开始使用ajax了 使用ajax创建的元素没有插件localtime在我的普通非ajax元素上为我做的格式。 这是我使用的本地时间插件 http://code.google.com/p/jquery-localtime/downloads/detail?name=jquery.localtime-0.5.js&can=2&q= 如何为ajax创建的新元素重新触发它?

2 个答案:

答案 0 :(得分:2)

我猜你的localtime插件正在监听像$(document).ready()这样的DOM就绪事件,以便在初始页面加载期间将其格式应用于相应的元素。除非你的ajax成功回调中有一个类似的链接,其中新的DOM内容被注入到这些格式化函数,否则这些函数将不会被触发,并且不会发生所需的格式化。为了选择和格式化在初始页面加载后添加的元素,您可能需要在从ajax调用中注入元素后调用本地时间格式化函数。这可能涉及将您的格式化过程包含在命名函数中,您可以在初始页面加载期间调用一次,并且每次注入相关内容时再次调用。

如果您要向我们展示您的代码,您可能会期待更详细和直接的回复。

答案 1 :(得分:1)

谢谢亚伦 我现在在ajax

的js响应的最后一位添加了这些代码行
var format;
var localise = function () {
    jQuery(this).text(jQuery.localtime.toLocalTime(jQuery(this).text(), format));
};
jQuery(".dateOnly:last").each(localise);

它有效!