我如何通过jQuery传递它的ID来获得一个选择的所有选项?
我只是想获取它们的值,而不是文本。
我如何通过jQuery传递它的ID来获得一个选择的所有选项?
我只是想获取它们的值,而不是文本。
当前回答
$("input[type=checkbox][checked]").serializeArray();
Or:
$(".some_class[type=checkbox][checked]").serializeArray();
看看结果:
alert($("input[type=checkbox][checked]").serializeArray().toSource());
其他回答
Use:
$("#id option").each(function()
{
// Add $(this).val() to your list
});
.each() | jQuery API文档
对于多选选项:
$('#test').val()返回所选值列表。 $(" #测试选项”)。Length返回选项总数(包括选中的和未选中的)
这是一种生成逗号分隔值列表的非常简单的方法。
var values = "";
$('#sel-box option').each(function () {
values = values + $(this).val() + ";";
});
另一种方法是使用toArray(),以便使用胖箭头函数与map,例如:
const options = $('#myselect option').toArray().map(it => $(it).val())
这是一个简单的例子在jquery中获得所有的值,文本,或所选项目的值,或所选项目的文本
$('#nCS1 > option').each((index, obj) => {
console.log($(obj).val());
})
printOptionValues = () => { $('#nCS1 > option').each((index, obj) => { console.log($(obj).val()); }) } printOptionTexts = () => { $('#nCS1 > option').each((index, obj) => { console.log($(obj).text()); }) } printSelectedItemText = () => { console.log($('#nCS1 option:selected').text()); } printSelectedItemValue = () => { console.log($('#nCS1 option:selected').val()); } <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <select size="1" id="nCS1" name="nCS1" class="form-control" > <option value="22">Australia</option> <option value="23">Brunei</option> <option value="33">Cambodia</option> <option value="32">Canada</option> <option value="27">Dubai</option> <option value="28">Indonesia</option> <option value="25">Malaysia</option> </select> <br/> <input type='button' onclick='printOptionValues()' value='print option values' /> <br/> <input type='button' onclick='printOptionTexts()' value='print option texts' /> <br/> <input type='button' onclick='printSelectedItemText()' value='print selected option text'/> <br/> <input type='button' onclick='printSelectedItemValue()' value='print selected option value' />