首先,我试图在单击时使用Javascript中的html()
替换div容器中的某些内容。使用此方法的问题是它仅将最后一个值放在数组中。
因此,我改用append()
。但这不像我期望的那样工作。好吧,它确实在for循环中添加了文本,但是单击之后,它只是添加内容而不会像html()
一样删除先前的内容。
这是我的实现方式:
<div id="events-content"></div>
// using Responsive Calendar js
onMonthChange: function(events) {
for (var eventsDate in options.events) {
if (eventsDate.indexOf(monthKey) != -1) {
var monthEvents = options.events[eventsDate];
for(i = 0; i < options.events[eventsDate].dayEvents.length; i++) {
$('#events-content').append(
'<p><b>' + eventsDate + ':</b> ' +
monthEvents.dayEvents[i].name + '<br/></p>');
}
}
}
},
...
如何使用Javascript替换之前添加的文本?
我在Responsive Calendar JS中使用它
最佳答案
好吧,你可以做这样的事情...
准备循环中的所有标记。
var html = "";
for(i = 0; i < options.events[eventsDate].dayEvents.length; i++) {
html += '<p><b>' + eventsDate + ':</b> ' +
monthEvents.dayEvents[i].name + '<br/></p>';
}
$('#events-content').html(html);