从具有特定ID的Bootstrap下拉菜单中获取选定的项目值
从具有特定ID的Bootstrap下拉菜单中获取选定的项目值
我正在使用Bootstrap 3
和JavaScript创建自己的“ComboBox”。这里是JSFiddle链接
,展示了我目前的进展:
HTML:
JavaScript:
$(document).on('click', '.dropdown-menu li a', function() { $('#datebox').val($(this).html()); });
这种方法在页面上重复使用这个“ComboBox”时效果很好。问题在于JQuery函数在寻找任何/所有的'.dropdown-menu li a'
时出现了问题。
如何修改我的JQuery代码,只查找ID为demolist的UL并获取其选定的值?
我尝试了以下方法,但都没有成功:
我尝试了'#demolist .dropdown-menu li a'
,但这不会触发函数:
$(document).on('click', '#demolist .dropdown-menu li a', function() { $('#datebox').val($(this).html()); });
我尝试调用#demolist的点击事件,但#datebox
会获取#demolist的所有列表项的HTML,而不是选定项的innerHTML:
$('#demolist').on('click', function(){ $('#datebox').val($(this).html()); });
更新:
有效的解决方案如下:
$('#demolist li a').on('click', function(){ $('#datebox').val($(this).html()); });
或者
$('#demolist li').on('click', function(){ $('#datebox').val($(this).text()); });
问题的出现原因:用户想要从具有特定ID的Bootstrap下拉菜单中获取所选项的值。
解决方法:使用jQuery编写代码,通过点击事件获取所选项的值。
文章内容如下:
设计使用Bootstrap的代码:
jQuery代码:
以上代码中,我们首先定义了一个具有特定ID("demolist")的下拉菜单。然后,使用jQuery编写了一个脚本。在脚本中,我们使用`$(document).ready()`函数来确保DOM加载完成后再执行代码。接下来,我们使用`$('#demolist a')`选择器来选中下拉菜单中的所有链接。然后,我们使用`.on('click')`方法为这些链接绑定了点击事件。在点击事件中,我们使用`$(this).text()`方法获取所选项的文本值,并将其存储在变量`txt`中。最后,我们使用`alert()`函数显示一个包含所选项值的提示框。
通过以上代码,用户可以从具有特定ID的Bootstrap下拉菜单中获取所选项的值。