PHP+ajax+layui实现双重列表的动态绑定
warning:
这篇文章距离上次修改已过196天,其中的内容可能已经有所变动。
以下是一个简化的PHP+Ajax+Layui实现双重列表动态绑定的示例代码:
PHP端代码(get\_right\_options.php):
<?php
// 假设这是从数据库获取选项的逻辑
$leftOptions = [
['id' => 1, 'name' => '选项A'],
['id' => 2, 'name' => '选项B'],
// ...
];
$rightOptions = [
// 根据左边选中的选项动态获取
];
// 返回JSON数据
echo json_encode([
'leftOptions' => $leftOptions,
'rightOptions' => $rightOptions
]);
?>
HTML和JavaScript代码:
<!DOCTYPE html>
<html>
<head>
<title>双重列表示例</title>
<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://www.layuicdn.com/layui/css/layui.css" media="all">
<script src="https://www.layuicdn.com/layui/layui.js"></script>
</head>
<body>
<form class="layui-form" action="">
<div class="layui-form-item">
<label class="layui-form-label">左边列表</label>
<div class="layui-input-block">
<select name="left" xm-select="left" xm-select-skin="normal" xm-select-search="" xm-select-search-select="">
<!-- 左边选项将被动态插入 -->
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">右边列表</label>
<div class="layui-input-block">
<select name="right" xm-select="right" xm-select-skin="normal" xm-select-search="" xm-select-search-select="">
<!-- 右边选项将被动态插入 -->
</select>
</div>
</div>
</form>
<script>
layui.use('form', function(){
var form = layui.form;
});
$(document).ready(function(){
// 初始化左边列表
$.ajax({
url: 'get_right_options.php',
type: 'GET',
dataType: 'json',
success: function(data) {
var leftSelect = $('[xm-select=left]');
leftSelect.html(''); // 清空原有选项
$.each(data.leftOptions, function(index, item) {
leftSelect.append($('<option>').text(item.name).attr('value', item.id));
});
form.render('select'); // 更新左边列表的Layui样式
// 初始化右边列表,这里应根据实际逻辑获取
var rightSelect = $('[xm-select=right]');
rightSelect.html(''); // 清空原有选项
$.each(data.rightOptions, function(index, item) {
rightSelect.append($('<option>').text(item.name).attr('value', item.id));
});
form.render('select'); // 更新右边列表的Layui样式
}
});
// 监听左边列表选择变化,动态更新
评论已关闭