Javascript fullcalendar自定义按钮单击可删除html元素
我有一个完整的日历网站,我使用customButtons选项添加两个按钮。我还使用jquery.apppend函数在标题中添加下拉列表和文本字段。当我单击自定义按钮时,我添加的下拉列表和文本字段消失。我找不到原因。有人能帮我解决这个问题吗 这是我自定义按钮的代码。它设置过滤器选项并更改按钮上的图标Javascript fullcalendar自定义按钮单击可删除html元素,javascript,jquery,fullcalendar-4,Javascript,Jquery,Fullcalendar 4,我有一个完整的日历网站,我使用customButtons选项添加两个按钮。我还使用jquery.apppend函数在标题中添加下拉列表和文本字段。当我单击自定义按钮时,我添加的下拉列表和文本字段消失。我找不到原因。有人能帮我解决这个问题吗 这是我自定义按钮的代码。它设置过滤器选项并更改按钮上的图标 customButtons: { filterButton: { text: '', click: function() { var newFilterResourcesWithEve
customButtons: {
filterButton: {
text: '',
click: function() {
var newFilterResourcesWithEvents = ! calendar.getOption('filterResourcesWithEvents');
calendar.setOption('filterResourcesWithEvents', newFilterResourcesWithEvents);
tekst();
}
}
},
但它也删除了这些元素。下拉列表和文本输入的附加代码为
$("#calendar .fc-resource-area .fc-widget-header .fc-cell-text").eq(0).append('<div class="form-inline"><div id="resourceddldiv"><select class="selectpicker" id="resourceddl" data-container="body"></select></div><input type="text" id="filter" placeholder="filter" size="15" style="margin-left:40px";></div>');
$(“#calendar.fc resource area.fc widget header.fc cell text”).eq(0).append(“”);
点击前
点击后
看起来您收到了回帖,而不是刷新页面上的JS。我不知道你把元素放在JS文件的什么地方。该按钮默认为submit,因此如果您不想进行回发,则需要防止该默认设置
event.preventDefault();
将此与按钮事件一起放置以停止回发,它不会刷新页面,导致您丢失这些元素。我通过在自定义按钮的函数后再次添加元素来解决此问题。如果我使用event.preventDefault();该函数根本没有执行。由于整个表在函数之后再次呈现,因此唯一的解决方案是再次追加它。谢谢。我在自定义按钮功能中尝试了您的建议,但结果仍然相同。元素将在日历渲染后立即追加。我试图在重新加载后再次附加它们,但没有效果。下面是一个示例,说明如何实现
preventDefault()
。如果你的元素因为点击按钮而消失,10次中有9次是因为你的回发,你的JS是如何安排回发的,等等。