我工作的一個功能:創建一個變量來等於一個動態創建的DOM元素
var container = $('#container'),
line1 = $('#line1'),
line2 = $('#line2'),
line3 = $('#line3'),
line4 = $('#line4'),
postcode = $('#postcode'),
addressPicker = $('#selector'),
noneOfTheAbove = $('#noneOfTheAbove');
$(document).on('click', '#noneOfTheAbove', function()
{
container.removeClass('hidden');
noneOfTheAbove.addClass('noDisplayElementImportant');
addressPicker.addClass('hidden');
line1.val('');
line2.val('');
line3.val('');
line4.val('');
postcode.val('');
});
與此唯一的問題是大幹快上點擊一個按鈕動態創建的DOM。因此,使用像這樣的變量不起作用,因爲它們不存在$(document).ready()。我如何將動態DOM元素分配給一個變量?會不會像$(document).find('#idHere')
?
感謝
更新1個
製作瓦爾全球然後本地(使用charlietfl答案):
var container,
line1,
line2,
line3,
line4,
postcode,
addressPicker,
noneOfTheAbove;
$(document).on('click', '#noneOfTheAbove', function()
{
container = $('#container');
line1 = $('#line1');
line2 = $('#line2');
line3 = $('#line3');
line4 = $('#line4');
postcode = $('#postcode');
addressPicker = $('#selector');
noneOfTheAbove = $('#noneOfTheAbove');
container.removeClass('hidden');
noneOfTheAbove.addClass('noDisplayElementImportant');
addressPicker.addClass('hidden');
line1.val('');
line2.val('');
line3.val('');
line4.val('');
postcode.val('');
});
啊!似乎現在很愚蠢xD謝謝:) – ThisGuyHasTwoThumbs
既然你讓它們在函數中是局部的,它們在那個函數之外是沒有用的,因此你根本就不需要它們。 –
@ANS *「完全不需要它們」*是主觀的......取決於它們中的任何一個可能在dom中被查詢的次數。我同意基於顯示的基本代碼,但也不知道實際代碼是否更復雜。至於在外面宣佈他們沒有任何理由,這是 – charlietfl