[英]Passing a parameter into the JQuery.slideUp() callback
我正在嘗試向上滑動元素,然后將其刪除。 但是我似乎無法將元素ID傳遞到刪除它的回調中。
我無法對值進行硬編碼,因為它必須是動態的。
insertedTemplates
是插入頁面的模板的集合。 當用戶更改其選項時,將插入一個新元素,並刪除舊元素。
以下內容將無法刪除該元素,因為它是未定義的:
var elementId = insertedTemplates[i].id;
$('#'+elementId).slideUp(400, function(elementId) {
$('#'+elementId).remove();
});
我發現了一個帖子,建議通過在函數聲明之后立即添加它來傳遞值。
這將立即刪除元素:
var elementId = insertedTemplates[i].id;
$('#'+elementId).slideUp(400, function() {
$('#'+elementId).remove();
}(elementId));
您不需要傳遞元素ID。 在回調中使用$(this)
。
var elementId = insertedTemplates[i].id;
$('#' + elementId).slideUp(400, function (elementId) {
$(this).remove(); // <---- Use $(this)
});
slideUp
回調中的$(this)
是調用該函數的元素。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.