用JS操作列表

如果列表的每一项都比较复杂,每插入一条数据,都要把html拿来填空,而且还可能会出错,当样式发生更改后,JS也得做调整。
如:

answers = "";
for(var i = 0; i< answerArray.length; i++){
answer = "

"+id+"
";
}
answers += answer;

这种操作,有办法以一种比较优雅的方式处理么,望指教,谢谢 :D

这种将css和html都写在js里本身就不优雅,也不规范。
应当把数据用标签或如ognl和el等表达式语言解析到jsp中,在通过js将这些小jsp加载到你想要的位置。这样js和html就分离开了,同事样式你可以在css里写好 ,可以在html里写死或者用js动态调用都可以。
像你这种拼接如果是新浪首页直接就把程序员给写死了。当你进新浪首页的时候部分数据马上就能取到,但下边的都是动态加载的。实际上应该放入js异步加载的。

$("#answer").each(function(){
$("

")
.val(id)
.appendTo($(this))
});

上面的代码可能与你的需要不同改成像这样的.
$.each(answers,function(){
.........
});

$("#answer").each(function(){
$("

")
.val(id)
.appendTo($(this))
});

应该是 text() 而不是 val () 吧。
另外其实用 wrap () 就可以了,更简洁

列表是下拉框:
select.options.add(new Option());
列表是网页块:
用ajax局部更新。