小弟想要製作個點擊表格欄位可以直接修改的網頁
不過遇到很奇怪的問題
也是找很久才發現,如果加上 setTimeout 就正常了 (時間給0...)
這是代表 closest 是異步執行的嗎!?
closest還沒回來 下一行已經在跑了?
總覺得我應該是哪裡理解錯誤...
jquery 代碼如下
$('td.fixed').live('click', function() {
if (!$(this).find('input').length) {
$(this).html('<input type="text" value="' + $(this).text() + '"><a
name="td_fixedbutton" class="button">儲存</a>');
}
});
$('a[name=td_fixedbutton]').live('click', function() {
let x = $(this).closest('td');
setTimeout(function() { //←這個加上去功能就會正常,拿掉就異常
x.html(x.find('input').val());
}, 0);
});
雖然現在可以執行,但是我覺得 setTimeout 應該不是正常解法...
希望可以解惑謝謝
我在 jsfiddle 放了遇到問題的程式碼
https://jsfiddle.net/76mr4fff/