我现在有一个效率很高的大脑放屁。
这里的想法是,如果我有一个静态table
(不幸的是,这种格式与我收到的数据一样),我将如何恰当append
select option dropdown
来自每个值的DOM
表格很容易分类?
我目前正在使用它,但似乎我可以使它比我当前的声明更有效。我对所有<table id='data'>
<tr>
<td>Item 1</td>
<td>Value 1</td>
<td>Prop 1</td>
</tr>
<tr >
<td>Item 2</td>
<td>Value 2</td>
<td>Prop 2</td>
</tr>
<tr >
<td>Item 3</td>
<td>Value 3</td>
<td>Prop 3</td>
</tr>
</table>
<select id="item"></select>
<select id="value"></select>
<select id="prop"></select>
操作都有感觉,如果我试图在具有数千项目的桌子上使用它,它将落后于浏览器。我们来看看代码。
JS小提琴: http://jsfiddle.net/z2V2p/1/
HTML:
$('tr td').each(function() {
var $this = $(this);
var text = $this.text();
var select = '<option value="'+text+'">'+text+'</option>';
switch($this.index()){
case 0:
$('#item').append(select);
break;
case 1:
$('#value').append(select);
break;
case 2:
$('#prop').append(select);
break;
default:
alert('Unexpected Error.');
}
});
的Javascript / jQuery的:
array
所以,我想问题是:
append
来缓存值,并使用index
那个?switch case
项而不是
我的td
如果实施了json
,会更快,更可扩展吗?我感谢所有的帮助。
我考虑过最终将darn表格转换为{{1}}对象,但我想我会先到达这里。