我正在使用jQuery UI中的按钮,如下所示:
("button").button();
简单..
但是当我在ajax加载的文件中使用标签时,按钮脚本不会应用于该按钮。
Ex:file.php:
<button>Testbutton</button>
将此文件加载到带有(“按钮”)的页面上。按钮();像这样:
$("#updateDiv").load(file.php);
..该按钮未应用于jQuery UI脚本。
我已经看过jQuery“live”函数了,但它似乎对我不起作用:(
答案 0 :(得分:2)
.live()
不起作用,因为它只处理UI事件(click
,dblclick
,mousedown
等)。您需要向.load()
提供回调:
$("#updateDiv").load('file.php', function (){
$(this).find('button').button();
});
答案 1 :(得分:1)
你必须在回调函数中初始化你的按钮:
$("#updateDiv").load('file.php', function() { $('button').button(); });
您可以选择使用ajaxSuccess:
$('#updateDiv').ajaxSuccess(function() {
$('button', this).button();
});
每次在div上成功调用加载时,这将启动div中的所有按钮。有关详细信息,请参阅http://api.jquery.com/ajaxSuccess/。
答案 2 :(得分:0)
尝试在AJAX请求的回调中调用.button函数,以便在放置在DOM中的新内容上运行。
$("#updateDiv").load('file.php', function() {
$("button").button();
});
答案 3 :(得分:0)
请注意,被调用的Ajax页面必须导入JQuery UI CSS文件