【Layui】Layui下select下拉框不显示或没有效果

今天再用Layui写界面时,发现自己的select下拉框没有显示

<from class="layui-form" action="">
			<div class="layui-input-inline">
				<label class="layui-form-label">姓名:</label>
				<div class="layui-input-block">
					<input type="text" name="title" required lay-verify="required" placeholder="姓名" autocomplete="off" class="layui-input">
				</div>
			</div>
			<div class="layui-input-inline">
				<label class="layui-form-label">地址:</label>
				<div class="layui-input-block">
					<select name="city" lay-verify="">
						<option value="">请选择一个城市</option>
						<option value="010">北京</option>
						<option value="021">上海</option>
						<option value="0571">杭州</option>
					</select>
				</div>
			</div>
			<div class="layui-input-inline">
				<div class="layui-input-block">
					<button class="layui-btn" lay-submit lay-filter="formDemo">立即提交</button>
					<button type="reset" class="layui-btn layui-btn-primary">重置</button>
				</div>
			</div>
		</from>

自己明明已经写了,为什么不显示的?

查了查资料发现:

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

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

<script>
	layui.use('form', function() {
	var form = layui.form; //只有执行了这一步,部分表单元素才会自动修饰成功

	//……

	//但是,如果你的HTML是动态生成的,自动渲染就会失效
	//因此你需要在相应的地方,执行下述方法来手动渲染,跟这类似的还有 element.init();
	form.render();
    });
</script>

我们只需要在我们本身的代码上,加上上述代码,就可以实现。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱敲代码的小黄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值