php thinkphp 實作二級連動 三級連動 四級聯動 多級連動 二級聯動 三級連動 四級聯動 多級聯動帶資料庫 帶選取。
如果不妥地方 歡迎指導,共同學習與進步。
分享是種美德。
頁數:<script></script><br>
<!-- 如果沒有保留選取狀態 可以把 <if></if>標籤內容都去掉 --><br>
<!-- 每個select是一級 你可以只有兩個select 就是二級連動,三個就是三級連動,四個就是四級聯動 以此類推 我做了一個四級聯動,一個二級聯動 正常--><br>
<br>
<!-- 地域 --><br>
<div>
<br>
<label>實驗室地域</label><br>
<div>
<br>
<select><br>
<option>城市</option>
<br>
<volist><br>
<option>selected='selected'>{$vo ['title']}</option>
<br>
</volist><br>
</select><br>
<select><br>
<option>學校</option>
<br>
<!-- 維持上回選取 --><br>
<if><br>
<php><br>
$region2 = D('LabTypeRegion')->where(array('id'=>$row['region2_id']))->getField('title');<br>
</php><br>
<option>{$region2}</option>
<br>
</if><br>
<!-- 維持上回選取 --><br>
</select><br>
<select><br>
<option>學院</option>
<br>
<!-- 維持上回選取 --><br>
<if><br>
<php><br>
$region3 = D('LabTypeRegion')->where(array('id'=>$row['region3_id']))->getField('title');<br>');
</php><br>
<option>{$region3}</option>
<br>
</if><br>
<!-- 保持上回选中 --><br>
</select><br>
<select><br>
<option>实验室</option>
<br>
<!-- 保持上回选中 --><br>
<if><br>
<php><br>
$region4 = D('LabTypeRegion')->where(array('id'=>$row['region4_id']))->getField('title');<br>
</php><br>
<option>{$region4}</option>
<br>
</if><br>
<!-- 保持上回选中 --><br>
<br>
</select><br>
</div>
<br>
</div>
<br>
<script>//設定預設,頁面載入時恢復預設選項。 <br />
function region_default() {<br />
$("option[value='-1']").attr('selected', 'selected');<br />
}<br />
function setregion(num, address_id) {<br />
var next = num + 1;<br />
$.ajax({<br />
type: 'POST',<br />
//設定json格式,接收返回陣列。 <br />
dataType: 'json',<br />
url: '',<br />
//ajax傳遞目前選項的value值,也就是目前的region_id。 <br />
data: 'region_id=' + $('#region_' + num + '_' + address_id).val(),🎎
success: function(msg) {<br />
//若為空白則執行。 <br />
if (msg != null) {<br />
var option_str = '';<br />
//循環中所寫出一個select所要新增的內容。並添加name標記。 <br />
for (var i = 0; i < msg.length; i++){<br />
name="region_'+next+'"value="'+msg[i]..com+""+msg)+next+'"value="'+msg[i].id+'">'+msidtion""titlep.
}<br />
//以「且刪除「為next的內容」移除下一個select。 <br />
$("option[name='region_" + next + "']").remove();<br />+ next + "']").remove();<br />
//以且向下一個select新增書寫好的內容。 <br />
$('#region_' + next + '_' + address_id).append(option_strstrid + '_' + address_id).append(option_strstrstr);<br />);<br />);
} else {<br />
//若返回值為空白,則移除所有標記的option,恢復預設選項。 <br />
for (var i = next; i <= 4; i++) {<br />
$("option[name='region_" + i + $("option[name='region_" + i + ”']").remove();
}<br />
}<br />
}<br />
<br />
})<br />
}<br />
</script><br><!-- 地域 -->
控制器: /**<br>
* [labindex 多重連結]<br>
* @return [type] [description]<br>
*/<br>
公用函數 labindex(){<br>
//實驗室地理<br>
$d=D('LabTypeRegion');<br>
如果(IS_POST){<br>
if($_POST['region_id']){<br>
$region_id = $_POST['region_id'];<br>
$condition['pid'] = $region_id;<br>
$list = $d->where($condition)->select();<br>
// echo json_encode($list);<br>
$this->ajaxReturn($list);<br>
}<br>
}其他{<br>
$condition['pid'] = array('neq',0);<br>
$condition['level'] = 1;<br>
$list = $d->where($condition)->select();<br>
$this->分配('list',$list);<br>
<br>
}<br>
//實驗室地理<br>
<br>
$this->display();<br>
}
多級聯動.zip ( 3.31 KB 下載:8次 )