Javascript jQuery-get<;李>;从<;ul>;有一个特定的类
我有一份清单:Javascript jQuery-get<;李>;从<;ul>;有一个特定的类,javascript,jquery,css,list,html-lists,Javascript,Jquery,Css,List,Html Lists,我有一份清单: <ul id="list"> <li class="one">Item A</li> <li class="one">Item B</li> <li class="two">Item C</li> <div id="pressed">Submit</div> </ul> 但所有这些返回值都是0。最好的方法是什么?在任何时候,只有一个将有
<ul id="list">
<li class="one">Item A</li>
<li class="one">Item B</li>
<li class="two">Item C</li>
<div id="pressed">Submit</div>
</ul>
但所有这些返回值都是0
。最好的方法是什么?在任何时候,只有一个
将有一个“2”类。您需要html()或text()而不是val()。函数val()用于输入元素,如文本、复选框等。还可以将div置于ul之外,以使html如Rory McCrossan所指出的那样有效
首先,您的HTML无效,因为
div
元素不能是ul
的子元素:
<ul id="list">
<li class="one">Item A</li>
<li class="one">Item B</li>
<li class="two">Item C</li>
</ul>
<div id="pressed">Submit</div>
在Rory McCrossan用HTML更正后,您可以这样做
$("#pressed").click(function() {
alert($('#list .two').text());
});
Li没有值。对于真正正确的HTML,对于任何可单击的内容,您还应该使用锚定标记(
)或按钮标记(Submit
)。@max\w Source请…尽管我不一定不同意。@max\w从可访问性角度来看,我同意。不过,在某些情况下,这是不可能的。对不起,我在发言中作了概括。大多数情况下(在这个问题的例子中也是如此),锚定标签或按钮应该用于可点击的元素。使用它们的好处包括默认情况下获取cursor:pointer
,默认情况下获取元素集上的tabindex
,以及识别可通过屏幕阅读器单击的标记。我同意有时候它们不是最合适的(比如当你试图让一个包含嵌套元素的块元素可以点击时)。@max\w完全同意
<ul id="list">
<li class="one">Item A</li>
<li class="one">Item B</li>
<li class="two">Item C</li>
</ul>
<div id="pressed">Submit</div>
$("#pressed").click(function() {
var v = $('#list').find('.two').text();
alert(v);
});
$("#pressed").click(function() {
alert($('#list .two').text());
});