我有一个在脚本中初始化的数组
var listarray = new Array();
并有一个动态创建的选择列表---
<select multiple size=6 width=150 style="width:150px" name="ToLB" >
</select>
我的问题是如何将选择列表的所有值分配给数组。提前致谢。
我有一个在脚本中初始化的数组
var listarray = new Array();
并有一个动态创建的选择列表---
<select multiple size=6 width=150 style="width:150px" name="ToLB" >
</select>
我的问题是如何将选择列表的所有值分配给数组。提前致谢。
你可以这样做:
jQuery-
var optionVal = new Array();
$('select option').each(function() {
optionVal.push($(this).val());
});
Javascript-
var x = document.getElementById("mySelect");
var optionVal = new Array();
for (i = 0; i < x.length; i++) {
optionVal.push(x.options[i].text);
}
这会将您选择框中的所有选项存储在数组中optionVal
。
希望它可以帮助你。
您可以使用getElementsByTagName
来获取所有的selectbox
as 对象。
var el = document.getElementsByTagName('select')
在 jQuery 中,您可以按如下方式进行操作。
var arrayOfValues = $("select").map(function() { return this.value; });
使用纯 javascript 这对你有用。现在,我假设您的选择中至少有一些选项
<select id="selecty" multiple size=6 width=150 style="width:150px" name="ToLB" >
<option value="monkey">Monkey</option>
</select>
var listarray = new Array();
//NOTE: Here you used new as a variable name. New is a reserved keyword so you cant use that as a variable name.
var select = document.getElementById('selecty'); // get the select list
for(var i = 0; i < select.options.length; i++){
listarray.push(select.options[i].value);
}
console.log(listarray);
>> ["monkey"]
在这里提琴:
<html>
<body>
<!-- Any list (The main thing that it was built before the launch of the functions of the script) -->
<select id = "mySelect" multiple size=6 width=150 style="width:150px" name="ToLB" >
<option value="1111"></option>
<option value="12"> </option>
<option value="123"></option>
</select>
<script>
var valuesList = new Array();
var mySelect = document.getElementById("mySelect");
var currentOption = mySelect.childNodes;
for (var i=1; i<currentOption.length; i = i+2) { // i+2 needed in order to pass text nodes
valuesList[i-1]=currentOption[i].value;
}
</script>
</body>
</html>
这些值将存储在您的数组中。我希望我能正确理解你。