Jquery:附加更复杂的html片段
我想使用jquery将更复杂的html片段附加到div中。我能够做到这一点,但是如何在一个追加调用中做到这一点呢?。任何意见感谢!谢谢。例如:Jquery:附加更复杂的html片段,jquery,append,fragment,Jquery,Append,Fragment,我想使用jquery将更复杂的html片段附加到div中。我能够做到这一点,但是如何在一个追加调用中做到这一点呢?。任何意见感谢!谢谢。例如: <div id="container"> <h1>Something</h1> <!-- Insert here --> </div> 某物 片段应如下所示: var arr = []; // can contain any number of items //to be us
<div id="container">
<h1>Something</h1>
<!-- Insert here -->
</div>
某物
片段应如下所示:
var arr = []; // can contain any number of items
//to be used here:
<h4>Something h4</h4><!-- This string is static -->
<p>Some paragraf</p><!-- This string is static -->
<ul> <!-- This is dynamic -->
<li>arr[0]</li>
<li>arr[1]</li>
<li>arr[2]</li>
<li>arr[...]</li>
</ul>
var arr=[];//可以包含任意数量的项目
//在此处使用:
什么h4
一些滑翔伞
- arr[0]
- arr[1]
- arr[2]
- arr[…]
$。每个(arr,功能(i,a){
$('ul')。追加(''+a+' ');
});
基于您的上述评论。迭代列表,将值外推为
a
,并将值附加到新创建的列表元素 只需调用append()
和map()
,就可以做到这一点,但不确定它是否比简单的循环更有效,但它确实看起来更酷:
var arr = ['error 1', 'error 2', 'error 3', 'error 4', 'error 5'];
$('<ul />', {id:'someID'}).append(function() {
return $.map(arr, function(error) { return $('<li>', {text:error}) });
}).appendTo('#container');
var arr=['error 1'、'error 2'、'error 3'、'error 4'、'error 5'];
$('
',{id:'someID'}).append(函数(){
return$.map(arr,函数(error){return$('',{text:error})});
}).appendTo(“#container”);
我能够做到这一点,但我想知道实现这一点的最佳/最优雅(性能方面)方法是什么
。表示这应该在@Ohgodwhy Edit上结束,所以也许现在我可以得到一些建设性的答案。谢谢。这仍然很难评估。如何填充数组列表?阵列中有什么?在什么情况下应处理动态列表?你想用模板代替它吗?是否可以使用JSON并注入到结构中?数组并不是很重要。我们可以假设其中只有0-100个项目。它总是由用户操作动态填充,基本上是一个错误列表。我只是在寻找最好的附加方式(如果可能的话,使用queryappend调用)。是否可以将其附加到ul标记,同时动态创建ul(现在您已经对其进行了硬编码)?我如何通过一个追加调用来实现这一点?我唯一能弄明白的方法就是制作一个字符串,然后用+=。
var arr = ['error 1', 'error 2', 'error 3', 'error 4', 'error 5'];
$('<ul />', {id:'someID'}).append(function() {
return $.map(arr, function(error) { return $('<li>', {text:error}) });
}).appendTo('#container');