简体   繁体   English

如何转换 <select>与optgroup放入JSON数组

[英]How to convert <select> with optgroup into JSON array

HTML: HTML:

<select multiple size="10" class="show" id="boxA"></select>
<nav id="buttons">
    <ul class="small-block-grid-2 medium-block-grid-2 large-block-grid-2">
        <li><a class="remove" href="#">Remove</a></li>
        <li><a class="add" href="#">Add</a></li>
    </ul>
</nav>
<select multiple size="10" class="show" id="boxB"> </select>

How to convert <select multiple size="10" class="show" id="boxB"> </select> into JSON array so that I can send it over to server via ajax? 如何将<select multiple size="10" class="show" id="boxB"> </select>转换为JSON数组,以便可以通过Ajax将其发送到服务器?

For your information the select box with ID boxB created by PHP file with <optgroup>. 作为参考,请选择由ID为<optgroup>. PHP文件创建的ID为boxB的选择框<optgroup>.

PHP file: PHP文件:

$last_category = "";
while ($row = mysqli_fetch_array($result)) {
    $levels = $row['level_name'];
    $levels_id = $row['level_id'];
    $subjects = $row['subject_name'];
    $subjects_id = $row['subject_id'];
    if ($last_category != $levels) {
        $last_category = $levels;
        echo '<optgroup label="' . $levels . '" class="' . $q .'">';
    }
    echo '<option value="' . $subjects_id . '">' . $subjects . '</option>';
    if ($last_category != $levels)
        echo '</optgroup>';
}

You can do something like this: 您可以执行以下操作:

var json = $(':input').serializeArray()
var string = JSON.stringify(json)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM