首先,我试图在单击时使用 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);
关于javascript - 使用 append() 不会替换以前的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24235970/