【发布时间】:2019-03-20 04:29:29
【问题描述】:
<select class="js-example-templating" name="mem1">
<?php
$query = "select * from user";
$query_result = query($query);
while($row = fetch_array($query_result)) {
echo "<option value='{$row['user_id']}'>{$row['user_id']} - {$row['name']}</option>";
}
?>
</select>
<br><br>
<select class="js-example-templating" name="mem2">
<?php
$query = "select * from user";
$query_result = query($query);
while($row = fetch_array($query_result)) {
echo "<option value='{$row['user_id']}'>{$row['user_id']} - {$row['name']}</option>";
}
?>
</select>
<br><br>
<select class="js-example-templating" name="mem3">
<?php
$query = "select * from user";
$query_result = query($query);
while($row = fetch_array($query_result)) {
echo "<option value='{$row['user_id']}'>{$row['user_id']} - {$row['name']}</option>";
}
?>
</select>
function formatState (state) {
if (!state.id) {
return state.text;
}
var $state = $(
'<span>' + state.text + '</span>'
);
return $state;
};
$(".js-example-templating").select2({
templateResult: formatState
});
</script>
我有 3 个下拉列表,我希望当我选择第一个下拉列表中的值时,该值不会出现在第二个和第三个下拉列表中,当我选择第二个下拉列表的值时,该值不会出现在第三个下拉列表中。我正在使用 Select2 库在下拉列表中进行实时搜索,并且由于该 select2 库,AJAX 调用不起作用,否则它将非常容易。任何帮助将不胜感激。
【问题讨论】:
-
您必须使用 javascript 数组数据源并为第二个和第三个下拉菜单更新这些数组。
-
或者您可以添加一些 javascript 并在更改任何下拉列表时只需在以下下拉列表中隐藏所选选项。