如何在另一个选定的下拉列表选择更改中更新一个Jquery Chosen下拉列表

时间:2012-12-20 17:52:33

标签: jquery jquery-chosen

我的情景就是这个

我需要创建一个考勤列表,所以我使用了两个jQuery选择框(多选下拉列表)。

一个针对参加者,另一个针对缺席者。我想要的是当我从有人参与选择框中选择一个特定的人时,他们不能在缺席人选择框中可用。有人可以帮助我吗?

这是我的编码段

<section>
<label for="text_field">Attended People</label>
                <div>
                    <select data-placeholder="Select Employees" class="chzn-select" id="employees" multiple="true" style="width:350px;" tabindex="4" name="employees[]">

                        <?php
                        $query2 = "SELECT * FROM `employee` WHERE `company_id`= $compnay_id";
                        $sql_result2 = mysql_query($query2);
                        while ($row2 = mysql_fetch_assoc($sql_result2)) {
                            ?>
                            <option value="<?php echo $row2['id']; ?>"><?php echo $row2['name']; ?></option>
                        <?php } ?>

                    </select>

                </div>

            </section> 
            <section><label for="text_field">Absented People</label>
                <div>
                    <select data-placeholder="Select Employees" class="chzn-select" id="employees2" multiple="true" style="width:350px;" tabindex="4" name="employees2[]">

                        <?php
                        $query2 = "SELECT * FROM `employee` WHERE `company_id`= $compnay_id";
                        $sql_result2 = mysql_query($query2);
                        while ($row2 = mysql_fetch_assoc($sql_result2)) {
                            ?>
                            <option value="<?php echo $row2['id']; ?>"><?php echo $row2['name']; ?></option>
                        <?php } ?>

                    </select>
                    <script type="text/javascript">
                        $(".chzn-select").chosen();
                        $(".chzn-select-deselect").chosen({allow_single_deselect: true});
                        $("")
                    </script>
                </div>

            </section> 

1 个答案:

答案 0 :(得分:0)

我现在有一个类似的问题。如果我理解正确,您希望在一个框(已参加)中选择更新另一个框中的可用选项(缺席)。

它比我的情况更复杂,因为你可能会使用多个选择但是长和短是你需要使用选择的更改/更新事件。它位于docs但完整性:

更改/更新活动

表单字段更改

使用表单字段时,通常需要在选择或取消选择值后执行某些操作。每当用户选择一个选择的字段时,它就会触发&#34;更改&#34;原始表单字段上的事件*。那让你做这样的事情:

$("#form_field").chosen().change( … );

动态更新动态

如果您需要更新选择字段中的选项并希望选择选择更改,则您需要触发&#34; liszt:updated&#34;在球场上的事件。 Chosen将根据更新的内容重新构建自己。

$("#form_field").trigger("liszt:updated");