在不刷新页面的情况下重新初始化javascript的最佳方法是什么?我目前正在尝试添加一个MDBootstrap <select>
标记,它不像添加子元素那么简单。相反,我将删除元素,并通过AJAX请求使用更新的数据重新构造它。
目前,我看到的唯一可能就是在元素被重新创建之后再次执行代码。
抱歉如果这还不够清楚的话。
我试图尝试的,但是它并不是很干净:
$("#function-btn").click(function(){
$.get("api/endpoint/getprofiles", function(){}).done(function(data){
$(".select-wrapper.mdb-select.md-form").remove()
$("#charcontainer").html(data);
$('.mdb-select').materialSelect();
})
// Reinitialize other JQuery functions around the '.mdb-select' element (alot)
})
发布于 2021-05-20 04:06:58
考虑下面的html
<div id='wrapper'>
<div id='container'>
<span>Content</span>
</div>
</div>
如果要删除和替换#container
,则不希望将选择器挂在#container
上,而是希望先将jQuery连接到父(#wrapper
),然后向下钻。
因此,它会看起来像这样。
$('#wrapper>#container').on('click',function(){
//do the thing
});
这样,从技术上讲,您并不是要连接到从DOM
中删除的元素,而是父元素(#wrapper
),即使选择器有子元素。
https://stackoverflow.com/questions/67613691
复制相似问题