2 回答

TA貢獻1906條經驗 獲得超3個贊
而不是直接在根代碼中調用插件,而是將其包裝在函數中并調用:
var bindMultiselects = function () {
$(".multiselect").multiselect();
};
$(function() {
bindMultiselects();
// any other page load code, etc.
});
然后,當您加載新內容時,再次調用該函數:
function inline_modal_form(href, data) {
url = '.';
modal_link = '#' + String(href);
$(modal_link).load(url, data, bindMultiselects);
}
當然,只有在兩次調用初始化插件的行為沒有副作用的情況下,此方法才有效。它不應該,但我不能肯定。如果是這種情況,那么您將需要一個比選擇器更好的選擇器,".multiselect"因為您只需要區分剛剛動態添加的元素,而不是已經使用插件初始化的元素即可。

TA貢獻1780條經驗 獲得超4個贊
沒有插件委托,委托用于事件綁定。
在您的情況下,您應該使用load回調函數:
function inline_modal_form(href, data) {
url = '.';
modal_link = '#' + String(href);
$(modal_link).load(url, data, function () {
$(modal_link).find('.multiselect').multiselect();
});
}
添加回答
舉報