[英]ul li $(this).text() shows nothing
解决了! 实际上问题出在$(document).ready(function(){//})中; 我使用它后,它工作正常。 谢谢您的帮助,由于这种愚蠢的错误,我们深表歉意。
我正在尝试从引导下拉菜单中选择li。 它有效,但是当我想获取所选li的文本时,它什么也没显示。
<div class="btn-group">
<a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
<font id="dropdownMenu" >inch</font>
<span class="caret"></span>
</a>
<ul id="dropdownList" class="dropdown-menu">
<li><a href="#">inch</a></li>
<li><a href="#">cm</a></li>
<li><a href="#">mm</a></li>
</ul>
</div>
JS:
$('#dropdownList li').click(function () {
console.log($(this).text());
document.getElementById('dropdownMenu').innerHTML = $(this).text();
});
我可以知道为什么它不起作用吗?
谢谢!
获取内部锚标签的文本。 这就是带有文本的元素。
$('#dropdownList li').click(function () {
console.log($(this).find('a').text());
document.getElementById('dropdownMenu').innerHTML = $(this).find('a').text();
});
使用Jquery:
$('#dropdownList li').click(function () {
console.log($(this).text());
$('#dropdownMenu').text($(this).text());
});
您应该尝试限制DOM的读/写,例如使用.find()
和.text()
等。我会在标记中添加一些数据
HTML:
<ul id="dropdownList" class="dropdown-menu">
<li data-value="inch"><a href="#">inch</a></li>
<li data-value="cm"><a href="#">cm</a></li>
<li data-value="mm"><a href="#">mm</a></li>
</ul>
JS:
$('#dropdownList li').click(function () {
console.log($(this).data('value'))
})
两件事情:
data-*
是有效的HTML5标记,可用于满足需要。 var dropdownValue = $('#value')
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.