Javascript 使用jquery.on()和$.ajax

Javascript 使用jquery.on()和$.ajax,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我有一些按钮,它们将被反复销毁和重新渲染。我正试图使用.on()来实现这一点,因为它适用于尚未创建的元素。我怀疑语法是正确的,jslint没有发现错误。它破坏了页面上的一些javascript,但不是全部。我从未使用过.on()。我不确定为什么它在jslint上没有显示错误,但会破坏我的一些浏览器,以及为什么它只会破坏我的一些浏览器 这是我的jQuery。在本例中,“showPrevious”是被销毁和重新渲染的内容 $("#showPrevious").on( "click", functio

我有一些按钮,它们将被反复销毁和重新渲染。我正试图使用
.on()
来实现这一点,因为它适用于尚未创建的元素。我怀疑语法是正确的,jslint没有发现错误。它破坏了页面上的一些javascript,但不是全部。我从未使用过
.on()
。我不确定为什么它在jslint上没有显示错误,但会破坏我的一些浏览器,以及为什么它只会破坏我的一些浏览器

这是我的jQuery。在本例中,“showPrevious”是被销毁和重新渲染的内容

$("#showPrevious").on( "click", function(){
    $.ajax({
        url: "flip/showprevious.php",
        cache: false,
        success: function(html){        
            $("#showContainer").html(html);             
        }
    });
});

事件处理程序仅绑定到当前选定的元素;在代码调用.on()时,它们必须存在于页面上

要执行类似操作,请将父元素上的事件处理程序附加到要添加/删除的元素

例如:

$( "#aParentSelector" ).on( "click", "#showPrevious", function() {
  // $.ajax({ ... }) etc
});

为什么不使用$(“#divid”).click()来代替呢?你能创建一个提琴让我们看到完整的代码吗?这是我的旧版本,但它只有在元素还没有被销毁和重新创建的情况下才起作用。一旦它被渲染,它就不再工作了。我可以在JSFIDLE中使用ajax吗?我需要销毁并重新呈现将被单击的按钮。抱歉,响应太晚。它仍然不起作用。事实上,它破坏了网站上其他地方的聊天功能,但是网站上的其他ajax功能仍然有效。我不知道为什么会这样,但也许这种情况有其独特之处。除了我发布的javascript,我还应该寻找什么?因为这是一个大项目,我不认为在这里发布它是一个好的选择。我建议的更改应该不会对其他代码产生影响。您没有发布所有javascript是正确的,可能有太多的代码需要阅读。为了尝试解决您的问题,我将调试javascript以了解发生了什么以及何时发生,并在关键位置设置一些断点。