Jquery 卸下kendoComboBox
我对打开模式时创建的组合框有一个问题,如果用户单击该模式并再次单击它,它会在旧组合框的基础上创建另一个组合框,因此看起来如下所示: 在文档中,它谈到了销毁方法,当我关闭模式时,该方法正在成功运行:Jquery 卸下kendoComboBox,jquery,kendo-ui,Jquery,Kendo Ui,我对打开模式时创建的组合框有一个问题,如果用户单击该模式并再次单击它,它会在旧组合框的基础上创建另一个组合框,因此看起来如下所示: 在文档中,它谈到了销毁方法,当我关闭模式时,该方法正在成功运行: $('#team1player_' + i).data('kendoComboBox').destroy(); $('#team1player_' + i).empty(); 然而,它仍然是创造一个在彼此之上。我缺少什么?销毁方法。这就是为什么可能需要手动删除DOM元素的原因
$('#team1player_' + i).data('kendoComboBox').destroy();
$('#team1player_' + i).empty();
然而,它仍然是创造一个在彼此之上。我缺少什么?销毁方法。这就是为什么可能需要手动删除DOM元素的原因
另一方面,您当前正在尝试清空ComboBox,这没有效果,因为此元素是or,因此它没有子元素。相反,您应该删除ComboBox元素之外的一些父元素
以下是剑道UI组合框的呈现方式:
<span class="k-widget k-combobox k-header">
<span class="k-dropdown-wrap k-state-default">
<input class="k-input" type="text" />
<span class="k-select">
<span class="k-icon k-i-arrow-s">select</span>
</span>
</span>
<input id="combobox" data-role="combobox" style="display: none;" />
</span>
如果要删除生成的内容并将原始内容恢复到其原始状态,请删除除此之外的所有DOM元素:
<input id="combobox" data-role="combobox" style="display: none;" />
另外,删除style=display:none;样式,否则将隐藏您创建的新组合框
最后,更简单的选择可能是删除组合框,这也将删除原始的组合框。然后,添加一个具有相同名称和id的新组合框,并从中创建新组合框
您可能还需要查看是否需要后续的小部件初始化,因为您可以使用现有的小部件实例。尝试更改$'team1player\'+i.empty;至$'team1player\'+i.html。。过去我也有同样的问题。看起来像。empty仅适用于旧版本。非常感谢,我删除了包装并创建了一个新的输入标记,非常简单:-