Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 未从“选择”标记中获取所选项目_Javascript_Php_Jquery - Fatal编程技术网

Javascript 未从“选择”标记中获取所选项目

Javascript 未从“选择”标记中获取所选项目,javascript,php,jquery,Javascript,Php,Jquery,下面是我编写的代码片段,用于获取用户从下拉列表中选择的类代码和节的值。 但是我只得到select的第一个元素,而不是selected元素 Html代码: <div id="dialog-form" title="Create New Academic Year"> <p class="validateTips">All form fields are required.</p> <fieldset>

下面是我编写的代码片段,用于获取用户从下拉列表中选择的类代码和节的值。 但是我只得到select的第一个元素,而不是selected元素

Html代码:

<div id="dialog-form" title="Create New Academic Year">
            <p class="validateTips">All form fields are required.</p>
            <fieldset>

                <label for="class_code">Class</label>
                <select name="class_code" id="class_code" class="text ui-widget-content ui-corner-all">
                    <?php
                    include_once 'config.php';
                    $sql = "select class_code from list_class";
                    $result = $conn->query($sql);
                    while ($row = $result->fetch_assoc()) {
                        ?>
                        <option value="<?php echo $row['class_code'] ?>"><?php echo $row['class_code'] ?></option>
                        <?php
                    }
                    ?>
                </select>
                <label for="section">Section</label>
                <select name="section" id="section" class="text ui-widget-content ui-corner-all" multiple>
                    <?php
                    include_once 'config.php';
                    $sql = "select section_code from list_sections";
                    $result = $conn->query($sql);
                    while ($row = $result->fetch_assoc()) {
                        ?>
                        <option value="<?php echo $row['section_code'] ?>"><?php echo $row['section_code'] ?></option>
                        <?php
                    }
                    ?>
                </select>
            </fieldset>
        </div>
我甚至试过

alert($('#class_code option:selected')val());
但即使这样也不起作用。 有人能帮我找出哪里出了问题吗。
提前感谢。

您不必选择所选选项,只需选择选择框本身即可

alert($('#class_code').val());
就你而言,还有一个问题。您克隆了表单,因此每个选择框在dom中存在不止一次,并且
val()
仅返回第一个选择框的选定值,该选择框是列表中的第一个元素

你必须选择-摆脱克隆或尝试类似的方法

alert($('select[name="class_code"]', dlg).val());

将dlg添加到上下文中会使jquery在克隆的元素中进行搜索,解决问题的方法是什么

您不必选择所选选项,只需选择selectbox本身即可

alert($('#class_code').val());
就你而言,还有一个问题。您克隆了表单,因此每个选择框在dom中存在不止一次,并且
val()
仅返回第一个选择框的选定值,该选择框是列表中的第一个元素

你必须选择-摆脱克隆或尝试类似的方法

alert($('select[name="class_code"]', dlg).val());

将dlg添加到上下文会使jquery在克隆的元素中进行搜索,解决问题的方法应该是什么

,因为我看到您尝试获取多个选定值的select没有“multiple”属性

请看这里:

<select name="class_code" id="class_code" class="text ui-widget-content ui-corner-all">
                    <?php
                    include_once 'config.php';
                    $sql = "select class_code from list_class";
                    $result = $conn->query($sql);
                    while ($row = $result->fetch_assoc()) {
                        ?>
                        <option value="<?php echo $row['class_code'] ?>"><?php echo $row['class_code'] ?></option>
                        <?php
                    }
                    ?>
</select>

尝试在此处添加“多个”:


//用户代码

我看到您试图获取多个选定值的选择没有“多个”属性

请看这里:

<select name="class_code" id="class_code" class="text ui-widget-content ui-corner-all">
                    <?php
                    include_once 'config.php';
                    $sql = "select class_code from list_class";
                    $result = $conn->query($sql);
                    while ($row = $result->fetch_assoc()) {
                        ?>
                        <option value="<?php echo $row['class_code'] ?>"><?php echo $row['class_code'] ?></option>
                        <?php
                    }
                    ?>
</select>

尝试在此处添加“多个”:


//用户代码


仍然只获得第一个元素。您是舒尔吗,只有一个元素id为
class_code
?我提供的代码应返回所选选项值Yes。没有其他具有此id的元素。我知道给定的语法是正确的,但它仍然不能与我的代码一起使用。如果页面上没有其他具有此id的元素,请您再次检查好吗?右键单击页面,显示Source(或ctrl+u)仍然只获得第一个元素。您是舒尔吗,只有一个元素的id为
class_code
?我提供的代码应返回所选选项值Yes。没有其他具有此id的元素。我知道给定的语法是正确的,但它仍然不能与我的代码一起使用。如果页面上没有其他具有此id的元素,请您再次检查好吗?右键单击页面并显示源(或ctrl+u)您想从下拉列表中获取所选值吗?是,我想要所选值您想将该值发送到PHP吗?是否>?否,我想将这些值用于计算目的。您想从下拉列表中获取所选值吗?是,我想要所选值您想将该值发送到PHP吗?是否>?否,我想使用这些值用于计算的值。添加多个值会将“null”作为输出添加多个值会将“null”作为输出