我要做的是点击一个链接,该链接将动态地将数据属性的值附加到不同的div。问题是它总是附加内容(重复)。我想要达到的是替换数组中的内容。我的代码:
<a href='#' class="hotel" data-hotel-name='Holiday Inn'>Add to favourites</a>
<a href='#' class="hotel" data-hotel-name='Hilton'>Add to favourites</a>
<div id="hotel-box">
<!-- add the hotel names here -->
</div>
<script>
var hotelName = [];
$('.hotel').on('click', function(e){
e.preventDefault();
hotelName.push( $(this).data('hotel-name') );
var html = '<ul style="background-color: green">';
jQuery.each($.unique(hotelName), function(index, item) {
html += '<li>something ' + item + '</li>';
});
html += '</ul>';
$('#hotel-box').append(html);
console.log(html);
});
</script>
点击上述两个链接时的输出应为:
<div id="hotel-box">
<ul>
<li>Hilton</li>
<li>Holiday Inn</li>
</ul>
</div