我正在使用jQuery dropdown插件,我希望被选中value
,但在文档中没有这样的选项,我如何通过jQuery获取选定的值?
(function($) {
$(function() {
$('ul').dropdown({
closeReset: false,
nested: true,
collision: true,
selectParents: true
});
});
}(jQuery));

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-dropdown/2.0.3/jquery.dropdown.js"></script>
<link rel="stylesheet" href="http://dane.one/wordpress/wp-content/uploads/dropdown.min_.css?ver=7e2962cd876e2a95be90b37baa97b096" type="text/css" />
<ul>
<li>group 1
<ul>
<li>assest 1
<ul>
<li>bingo!</li>
</ul>
</li>
</ul>
</li>
<li>group 2
<ul>
<li>assest 2
<ul>
<li>bingo!</li>
</ul>
</li>
</ul>
</li>
</ul>
&#13;
此问题也在github之前提出,但没有答案。 看起来插件不适用于此代码段,请参阅演示 here (我使用嵌套演示)
请注意,我使用ul
而不是select option
答案 0 :(得分:1)
小心使用select
? documentation 使用select
而不是ul
。这样,您就可以获得选定的价值。 无法发表评论,因此会在此处发布
更新回答:此处了解如何获取所选
var selectedValue = '';
$(document).on('click', '.dropdown-menu li.dropdown-item', function(e) {
selectedValue = $(this).find('span').text();
});
答案 1 :(得分:1)
@CodeSavy 回答是正确的方向和逻辑,但有一些问题。如果创作者未提供获取所选值的选项,则应自行执行此操作,打开jquery.dropdown.js
搜索var classes = {
您将找到此selected: 'dropdown-selected',
,因此在选择每个项目后,它将会将此类添加到所选项目。在上一个答案中,您可以在text()
之后获得所有项click
,但在下面您只能获得选中项目text()
$(document).on('click', '.dropdown-item', function() {
if ($(this).hasClass('dropdown-selected')) {
var val = $(this).text();
console.log(val);
}
})
但是对插件脚本进行一些更改后,您可以添加一些属性或值以获得更好的结果。