我有一个带有下拉列表的按钮,我试图使用jquery (在from submit上)刷新它,因此更新它的下拉列表以显示新的条目。
<button type="button" tabindex="-1" class="fr-command fr-btn fr-dropdown" data-cmd="itemAttributeKey">
<i class="fa fa-text-height"></i>
</button>
<div class="fr-dropdown-menu" style="left: 597px; top: 37px;">
</div>该按钮用于WYSIWYG插件(将文本添加到编辑器中)。我刚刚得到上面的代码从铬检查编码编辑器,这是我所能找到的按钮。
此编码在提交表单时运行。
$(".fr-dropdown").load(location.href + " .fr-dropdown");问题是,它只是打破下拉列表,而不是重新加载它来添加更新的项目。
我让$("#key-name-list").load(location.href + " #key-name-list");转到key-name-list div,它可以很好地更新div中的li项,但是我不能让WYSIWYG编辑器按钮下拉显示新条目。
我对jquery或js不太了解,所以这就是我所掌握的全部信息。我可能漏掉了什么。当表单提交时,运行的代码有什么问题?为什么它要打破下拉列表而不是完全刷新它。
更新
这是@Guffa的答案的编辑。你说的有道理,我抄袭了很久以前的编码,不记得它是如何工作的,它只是具有与我所需要的功能相似的功能,所以我使用了它。
使用您的代码,我得到了与我所做的类似的结果--在表单提交之前

以及之后。

注意它是如何打破按钮而不再显示的。
(将其作为更新,因为我想添加图像)
发布于 2016-04-09 10:02:45
 method不替换元素,而是将内容放置在元素中,因此这两种代码实际上都不正确。在列表的情况下,它不会失败,因为它在div中添加了另一个div。
您应该只从加载的数据获取内容,而不是元素本身:
$("#key-name-list").load(location.href + " #key-name-list li");以及:
$(".fr-dropdown").load(location.href + " .fr-dropdown option");https://stackoverflow.com/questions/36515249
复制相似问题