2

我的场景是这样的

我需要创建一个出勤列表,所以我为此使用了两个 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> 
4

1 回答 1

0

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

它比我的情况更复杂,因为您可能会使用多项选择,但总而言之,您需要使用来自 Chosen 的 Change / Update 事件。它在文档中,但为了完整性:

更改/更新事件

表单字段更改

使用表单域时,您通常希望在选择或取消选择某个值后执行一些行为。每当用户在 Chosen 中选择一个字段时,它都会在原始表单字段上触发一个“更改”事件*。那让你做这样的事情:

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

动态更新选择

如果您需要更新您的选择字段中的选项并希望 Chosen 获取更改,您需要在该字段上触发“liszt:updated”事件。选择将根据更新的内容重新构建自己。

$("#form_field").trigger("liszt:updated");
于 2013-07-14T02:13:48.833 回答