下面的当前代码 - 我必须复制并粘贴每个 arr[0]、arr[1]、arr[2]
。但是,将来我可能会有更多或更少的数组选项,并且希望代码能够自动更新而无需更改我的代码。
基本上,我想为每个列表项创建一个“for-each”情况:
<li><i class='icon-check twentytwo color'></i><span>" + arr + "</span></li>
当前代码:
var data = $('.availability').text();
var arr = data.split('•');
$('.availability').html("<li><i class='icon-check twentytwo color'></i><span>" + arr[0] + "</span></li><li><i class='icon-check twentytwo color'></i><span>" + arr[1] + "</span></li><li><i class='icon-check twentytwo color'></i><span>" + arr[2] + "</span></li>");
<小时/>
答案 = 所有这些都可以在各种情况下发挥作用。我选择答案的依据是我正在使用 Handlebars 模板,使得其中一些代码片段无法用于我的项目。
最佳答案
您可以使用 $.each
循环数组功能。
但是您应该append()
项目,而不是使用html()
来覆盖您的HTML。
var data = $('.availability').text();
var arr = data.split('•');
$.each( arr, function( index, value ) {
$('.availability').append("<li><i class='icon-check twentytwo color'></i><span>" + value + "</span></li>");
});
关于JQuery - 分割字符串(对于每个),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32625728/