Javascript 选择要关联的数组的列表

Javascript 选择要关联的数组的列表,javascript,html,json,select,Javascript,Html,Json,Select,我有一个选择选项和值: <select id="sid"> <option value="sValue1">sText1</option> ... </select> 是否有现成的/简化的工具来执行此操作?向select添加一个函数,该函数将在更改时调用,并在更改时从所选选项获取值和文本 函数getValueelem{ 设obj={}; 对象[elem.options[elem.selectedIndex

我有一个选择选项和值:

<select id="sid">
<option value="sValue1">sText1</option>
...
</select>
是否有现成的/简化的工具来执行此操作?

向select添加一个函数,该函数将在更改时调用,并在更改时从所选选项获取值和文本

函数getValueelem{ 设obj={}; 对象[elem.options[elem.selectedIndex].text]=elem.value console.logobj } sText1 sText2 sText3 这是一个基本的。。。在…上迭代。 请注意,如果有多个标签相同,则最后一个标签将出现在结果对象中

const select=document.getElementById'sid'; const objContainer=document.getElementById'sid-obj'; const options=select.getElementsByTagName'option'; const selectObj={}; 对于const opt of options{ 设optObj={}; optObj[opt.textContent]=opt.value; Object.assignselectObj,optObj; } //以代码形式打印结果 objContainer.textContent=JSON.stringifyselectObj; 违约 sText1 sText2 sText3 sText4 sText4 结果:
很抱歉来晚了,但这里有一个jQuery解决方案

var arr={}; $sid option.eachfunction{ 让text=$this.text; arr[text]=$this.val; }; //打印结果 $'sid-obj'.appendJSON.stringifyarr; 违约 sText1 sText2 sText3 sText4 sText4 结果:
请访问,看看有什么和。做一些研究,搜索相关话题等;如果您陷入困境,请发布您的尝试,注意输入和预期输出,最好是在一个想法中,很明显,我需要将select中的所有文本和值转换为数组。至于你的答案,我唯一需要的编辑是知道在什么事件上有多少选项?是multiselect吗?对不起,我可能应该指出更多细节:我从Ajax响应中获得html页面。它包含select而不是multiselect。我需要从中选择所有对{text1:value1,text2:value2,…}。因此,在您的代码中,应该只为每个选项添加一个循环,用于反馈,但我不喜欢jQuery,永远不要使用它。
var data = {"sText1":"sValue1",...};