基本上,我使用jQuery中的AJAX将jQuery Ui内容从另一个html文件导入到我的index.html文件中。似乎' Ui‘向html标签添加了类,我猜它是在加载DOM时添加的,但当AJAX拉入内容时,它不会从Ui带来额外的类。
有什么方法可以解决这个问题吗?
我遗漏了什么简单的东西?
我似乎在任何地方都找不到关于这个问题的信息。
var $prodBut=$('#prodButton');
$prodBut.click(function(){
$('main').load('products2.html main > *');
});
发布于 2018-07-21 18:19:08
当您将.load()
与CSS选择器一起使用时,jQuery不会运行内容中找到的任何JavaScript。它无法知道是否只运行选择器选择的DOM子树中的脚本就能正常工作,因为它可能依赖于其他未选择的<script>
标记。
上次我检查的时候,没有任何选项可以改变这种行为。
发布于 2018-07-24 20:20:43
所以我遗漏的“简单的事情”是我需要添加一个回调函数
var $prodBut=$('#prodButton');
$prodBut.click(function(){
$('main').load('products2.html main > *', null, onLoadProducts);
});
在我的例子中,我试图添加jQueryUI标签,所以回调函数就是:
function onLoadProducts(){
$('#contProductTabs').tabs();
}
我以为我知道回调函数做了什么,但我想直到我需要使用回调函数时,我才真正理解。
https://stackoverflow.com/questions/51458863
复制相似问题