PHP
bootstrap-select 从后台动态获取数据
bootstrap-select 从后台动态获取数据
最近在完成一个需求的时候,由于需要将固定的数据弄成动态数据,由于之前的select支持多选模糊查询使用的是
bootstrap,所以博主百度了下,最终发现了这个方法解决,今天在这里跟大家分享。
首页是html样式代码:
<div class='form-group'> <select class='form-control' autocomplete='off' id='projectType'> <option value ='1'>项目1</option> <option value ='2'>项目2</option> <option value ='3'>项目3</option> </select> </div> <div class='form-group'> <select class='selectpicker' autocomplete='off' id='party_a_project_name' data-live-search='true' multiple title='--请选择上游项目--'> </select> </div>
然后我们先写一个接口,大概这样可以调取返回数据填充select项目:
$projectTypeArray= array( array('id' => 1,'text' => 项目1,'selected' => “”), array('id' => 2,'text' => 项目2,'selected' => “”) ); echo json_encode(projectTypeArray)
然后是js部分
$("#projectType").change(function(){ if ($(this).val() == "") return; $("#party_a_project_name option").remove(); var selectType = $(this).val(); $.ajax({ method: 'post', url: '接口地址', data: { projectType: selectType, }, success: function (res) { var html = ''; Object.keys(res).forEach(function(key){ html += '<option value="' + res[key].id + '"'+ res[key].selected +'>' + res[key].text+ '</option>'; }); $("#party_a_project_name").html(html); $("#party_a_project_name").selectpicker('refresh'); } }); });
这样就可以实现我们需要的效果,以上只是关键的代码,并不包含全部,但是相信大家看到这部分代码,一定可以实现。
0条评论