javascript - jQuery:将选择框值和文本转换为对象

标签 javascript jquery

我想将选择框值和文本转换为对象,以下是我尝试过的。结果不是我想要的,有什么想法吗?

谢谢

HTML 代码:

<select id="district">
     <option selected="" value="-1"> All </ option>
     <option value="44"> Kowloon Tong </ option>
     <option value="46"> Yau Yat Tsuen </ option>
     <option value="47"> Ho Man Tin </ option>
     <option value="101"> Fei Ngo Shan </ option>
     <option value="133"> Beacon Hill </ option>
</ select>

JS代码:

var a = []
$('#district option').each(function () {
    var a1 = parseInt($(this).attr('value'))
    var a2 = $(this).text()

    var b = {
        a1: a2
    }
    a.push(b)
})
console.log(a)

结果:

[
    Object {
        a1 = " all regions "
    },
    Object {
        a1 = " Kowloon Tong "
    },
    Object {
        a1 = " Yau Yat Chuen "
    },
    Object {
        a1 = " Ho Man "
    },
    Object {
        a1 = " Fei Ngo Shan "
    },
    Object {
        a1 = " Beacon Hill "
    }
]

预期结果:

[
    Object {
        44 = " all regions "
    },
    Object {
        46 = " Kowloon Tong "
    },
    Object {
        47 = " Yau Yat Chuen "
    },
    ...
]

最佳答案

var a = []
$('#district option').each(function () {
    var a1 = parseInt($(this).attr('value'))
    var a2 = $(this).text()

    var b = {};
    b[a1] = a2
    a.push(b)
})
console.log(a)

关于javascript - jQuery:将选择框值和文本转换为对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17036378/

相关文章:

javascript - 在正则表达式的特定位置查找字符类型

javascript - 在javascript中获取选择范围的样式

javascript - Angular UI - 模态高度相对于窗口高度

javascript - MomentJS 在格式化时更改日期值?

javascript - 设置具有动态元素的div的高度

javascript - 如何在自定义帮助器中重新实现 jQuery 的默认帮助器

jquery - 基于元素可见性的功能不起作用?

javascript - $ ('#id' ) 返回 [对象对象]

javascript - html 字符串上的 JQuery.find() 会导致执行 html

javascript - 如何将变量添加到选择器中