我有一个可以选择多个值的下拉列表。我知道如果下拉列表存储值逗号分隔,则可以拆分字符串并检索值。但是我有一个下拉列表,在选择多个值时将它们存储为列表,每个值都作为列表元素。我尝试以相同的方式检索值,但我只得到第一个值!任何人都可以建议使用JS检索所有值的方法吗?
下拉列表中的选定值基本上会动态填充列表。我需要知道如何检索列表的值。
列表的代码是:
Javascript和HTML代码是:
var ul = document.getElementById("foo");
var items = ul.getElementsByTagName("li");
for (var i = 0; i < items.length; ++i)
{
var it = items[i].getElementsByTagName("span");
alert(it.innerHTML);
} <ul id="foo">
<li><span> Afghanistan</span>
</li>
<li><span> Afghanistan2</span>
</li>
<li><span> Afghanistan3</span>
</li>
</ul>
答案 0 :(得分:1)
是否必须使用原始JS?
在jQuery中你可以这样做:
$( "ul > li" ).each(function( index ) {
console.log( index + ": " + $( this ).text() );
});
P.S。我在这个例子中使用ul&gt; li选择器,但我不确定它是你的最佳解决方案,因为我看不到你的页面的完整标记。根据你的问题的主题,我想你需要使用一些额外的jQuery选择器值来检测选定的选项。这样的事情:
if ($(this).is(':selected') {
//then process this value
}