이 글은 주로 개발 시layUI를 기반으로 한 3단계 연계 효과를 구현하기 위해 PHP를 사용하는 방법에 대한 코드를 소개합니다. 이제 필요한 친구들이 참고할 수 있도록 공유합니다. 🎜🎜## 🎜🎜#백엔드 개발에서는 전체 페이지 효과가 아름답고 넉넉해 보일 수 있도록layUI 프레임워크를 사용하는 경우가 많습니다. 그러나 때때로 일부 기본 효과를layUI 프레임워크에 배치할 때 사용할 수 없는 경우가 있습니다. 도, 시, 군 간 3단계 연계 선택 효과. 이전과 다르게layUI 프레임워크에서는 이벤트를 수신하기 위해 select의lay-filter 속성에 주의해야 하며, 이 두 가지 문제를 해결하려면 linkage가 필요합니다. 더 이상 문제가 되지 않습니다. 아래에서 공유해 드리겠습니다.
구현 코드:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <title>基于 Layui form 组件的省市区级联的实现</title> <link rel="stylesheet" href="http://www.zhengjinfan.cn/plugins/layui/css/layui.css" /> </head> <body> <div style="margin: 50px auto; "> <form class="layui-form"> <div class="layui-form-item"> <label class="layui-form-label">选择地区</label> <div class="layui-input-inline"> <select name="province" lay-filter="province"> <option value="">请选择省</option> </select> </div> <div class="layui-input-inline" style="display: none;"> <select name="city" lay-filter="city"> <option value="">请选择市</option> </select> </div> <div class="layui-input-inline" style="display: none;"> <select name="area" lay-filter="area"> <option value="">请选择县/区</option> </select> </div> </div> </form> </div> <script type="text/javascript" src="http://www.zhengjinfan.cn/plugins/layui/layui.js"></script> <script type="text/javascript" src="http://www.zhengjinfan.cn/js/area.js"></script> <script> (function(){ var areaData=Area; var $, $form,form; var $selectProvince,$selectCity,$selectArea; layui.use(['jquery', 'form'], function() { $ = layui.jquery; form = layui.form(); $form = $('form'); $selectProvince=$form.find('select[name=province]'); $selectCity=$form.find('select[name=city]'); $selectArea=$form.find('select[name=area]'); form.on('select(province)', function(data){ var value = data.value; var d = value.split('_'); var code = d[0]; var count = d[1]; var index = d[2]; if(count > 0) { loadCity(areaData[index].mallCityList,index); $selectCity.parent().show(); } else { $selectCity.parent().hide(); $selectArea.parent().hide(); $selectCity.find('[data-new=1]').remove(); $selectArea.find('[data-new=1]').remove(); form.render('select'); } }); form.on('select(city)', function(data){ var value = data.value; var d = value.split('_'); var code = d[0]; var count = d[1]; var index = d[2]; var areaIndex=d[3]; if(count > 0) { loadArea(areaData[index].mallCityList[index].mallAreaList); $selectArea.parent().show(); } else { $selectArea.parent().hide(); } }); form.on('select(area)', function(data){ }); loadProvince(); }); function loadProvince(){ for(var i=0,length=areaData.length;i<length;i++){ $selectProvince.append('<option value="'+ areaData[i].provinceCode + '_' + areaData[i].mallCityList.length + '_' + i + '">'+areaData[i].provinceName+'</option>') } form.render('select'); } function loadCity(citys,areaIndex){ $selectCity.find('[data-new=1]').remove(); $selectArea.find('[data-new=1]').remove(); for(var i=0,length=citys.length;i<length;i++){ $selectCity.append('<option data-new ="1" value="'+ citys[i].cityCode + '_' + citys[i].mallAreaList.length + '_' + i + '_'+areaIndex+'">'+citys[i].cityName+'</option>') } form.render('select'); } function loadArea(areas){ $selectArea.find('[data-new=1]').remove(); $selectArea.find('[data-new=1]').remove(); for(var i=0,length=areas.length;i<length;i++){ $selectArea.append('<option data-new ="1" value="'+ areas[i].areaCode+'">'+areas[i].areaName +'</option>') } form.render('select'); } })() </script> </body> </html>
위 내용은 모두의 학습에 도움이 되기를 바랍니다. PHP 중국어 웹사이트!
관련 권장 사항:
호출 위치에서 디버깅 정보를 인쇄하는 PHP의 debug_backtrace() 함수 정보#🎜🎜 ##🎜 🎜#프레임워크 개발에서의 종속성 주입, 컨테이너 및 모양 패턴에 대해 이야기해 보겠습니다(2부)
위 내용은 개발 시 PHP를 사용하여 LayUI 기반의 3단계 연계 효과 코드를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!