PHP前端开发

layui的select框不出来怎么办

百变鹏仔 2个月前 (11-16) #layui
文章标签 不出来
layui的select框不出来是因为layui会对select、checkbox、radio等原始元素隐藏,其解决办法就是加载form,并且执行一个实例即可。

本教程操作环境:Windows7系统、layui1.0版,Dell G3电脑。

推荐:《javascript基础教程》《layUI教程》

今天用layui写前端页面时候用到了通过jqurey中的befor追加select元素

一开始写法:

<div>    <label>执行人员</label>    <div>      <select>        <option>选择部门</option>        <option>北京</option>      </select>       </div>---        <div>      <select>        <option>选择人员</option>        <option>张三</option>      </select> </div>  <button>  <i></i></button></div><script>$(function(){$("#addpeop").click(function(){var peop=$("#addpeod");var t=$([&#39;<label class="layui-form-label">&#39;,       &#39;<div  style="width: 150px;display: inline-block;" >&#39;,               &#39;<select name="city">&#39;,           &#39;<option value="">选择部门&#39;,          &#39;<option value="0">北京&#39;,         &#39;&#39;,          &#39;---&#39;,           &#39;<div style="width: 150px;display: inline-block;">&#39;,        &#39; <select name="city" >&#39;,          &#39; <option value="">选择人员&#39;,               &#39;<option value="0">张三&#39;,               &#39;&#39;,       &#39;&#39;,       &#39;<button type="button" class="layui-btn layui-btn-xs layui-btn-danger" id="del">删除&#39;].join(&#39;&#39;));t.find(&#39;#del&#39;).on(&#39;click&#39;, function(){t1.remove();        });peop.append(t);   })})</script>

页面内容:

翻阅layui官方API发现

Layui会对select、checkbox、radio等原始元素隐藏,从而进行美化修饰处理。但这需要依赖于form组件,所以你必须加载 form,并且执行一个实例。值得注意的是:导航的Hover效果、Tab选项卡等同理(它们需依赖 element 模块)

所以当新添加这些元素以后需要对页面表单元素重新渲染一下

layui.use('form', function(){  var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功    //……    //但是,如果你的HTML是动态生成的,自动渲染就会失效  //因此你需要在相应的地方,执行下述方法来手动渲染,跟这类似的还有 element.init();  form.render();});

在script最后加上上面代码

问题解决了

注:用的layui 2.x版本其他版本可能会有差异

更多编程相关知识,请访问:编程教学!!