[英]Textboxes matching table column width
我有這個表,每個列都有一個文本框(它們將用於過濾)。 文本框的寬度應與相應列的寬度相同。
這是我得到的(簡化版): http : //jsfiddle.net/9uUpP/
偽代碼解釋了我正在嘗試使用當前腳本執行的操作:
document ready{
var index = 0;
for each(th){
textboxNr(index).width = this.width;
index++;
}
}
如您所見,文本框與寬度中的列不匹配。
重要:表+內容是生成的,可能會不時變化,因此我必須制作動態解決方案。 列數始終相同,但其寬度可能會更改
這不需要額外的變量,你可以在each
方法本身使用index
參數,以及:eq() Selector
如:
$(document).ready(function () {
$("#table th").each(function (index) {
$('input[type="text"]:eq(' + index + ')').css('width', $(this).width());
});
});
我使用了:eq()
而不是:nth-child(n)
因為:nth-child(n)
使用基於1的索引來符合CSS規范,但each
方法中的index
參數從0
開始:eq()
使用基於0的索引。
我認為索引不正確......
$(document).ready(function () {
$("#table th").each(function (i, v) {
$('input[type="text"]:nth-child(' + (i+1) + ')').css('width', $(this).width() + 'px');
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.