gpt4 book ai didi

javascript - 来自选择列表选项值的对象

转载 作者:行者123 更新时间:2023-11-29 20:46:20 25 4
gpt4 key购买 nike

想要制作一个包含所有选择列表选项值及其内部文本的对象。问题是,当控制台日志看起来像是在获取不同的对象时,而不是创建一个包含所有选项值的对象。

[这是我的代码][1]

let values = {};
$('select option').each(function() {
var optionValue = $(this).attr('value');
var optionText = $(this).text();
console.log(optionValue, optionText);
Object.assign(values, {optionValue: optionText});
console.log(values);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select>
<option value="one">Value one</option>
<option value="two">Value two</option>
<option value="three">Value three</option>
</select>

我哪里错了?

最佳答案

您的代码正在创建一个以 optionValue 为键的对象,并且每次都会被覆盖。如果您打算创建一个以 optionValue 的值作为键的对象,则使用 computed property names .您需要使用 [] 包装 optionValue 以将变量用作键:

let values = {};

$('select option').each(function() {
var optionValue = $(this).attr('value');
var optionText = $(this).text();

Object.assign(values, {
[optionValue]: optionText
});

});

console.log(values);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<select>
<option value="one">Value one</option>
<option value="two">Value two</option>
<option value="three">Value three</option>
</select>

关于javascript - 来自选择列表选项值的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54423430/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com