我已经在这里看到了其他示例,但没有一个适合我的问题。

我有一个接收select元素的函数,我需要它来吐出JSON格式的字符串。

例:

foo = buildOptionStructure($('.select-test'));

// Returns string of JSON formatted option data from select
// options in element.
function buildOptionStructure(selectElement) {
    options = "[";
    selectElement.find('option').each(function(option, i) {
        console.log(this); // Return my html in console.
        console.log(option); // Return a zero based index!
        console.log("I VALUE: " + option); // Returns same zero based index!
        options += "{";
        options += "name:'" + option.text() + "'";
        options += "},";
    });
    options += "]"

    return options;
}


我只需要从给定的select元素的选项中构建一个字符串。我在这里想念什么?

最佳答案

function buildOptionStructure(selectElement) {
    var options = [];
    selectElement.find('option').each(function(k,v) {
        options.push({name: $(this).val()});
    });
    return options
}

var foo = buildOptionStructure($('.select-test'));

console.log(foo);


要获取JSON字符串,可以使用JSON.stringify(foo)

FIDDLE

关于jquery - 使用jQuery遍历select元素中的选项,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21962245/

10-11 06:29