javascript - 使用 append() 不会替换以前的内容

标签 javascript jquery html css dom-manipulation

首先,我试图在单击时使用 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/

相关文章:

javascript - AngularJS ||执行其他模糊功能时,忽略元素模糊上的 ngBlur

jquery - 如何在同位素中使用动态容器?

html - 在左表上对齐图像?

html - Flexbox 顺序和 Tab 键导航

javascript - 在 React 中返回多个 <tr> 行

JavaScript - 将数据库 base64 字符串转换为图像

javascript - Bootstrap 将 div 元素固定在顶部并防止调整大小

javascript - 编辑 JQuery 文档时出现问题

javascript - 获取 HTML 元素内文本的位置

javascript - catch 语句中没有提升?