layui 下拉框 新旧值比较
时间: 2023-08-20 21:37:51 浏览: 95
您好!对于 layui 下拉框(select 组件)而言,如果您想要在选中某个选项后,对新旧值进行比较,可以通过保存上一个选中的值,然后在 change 事件中进行比较,具体方法如下:
1. 给 select 组件添加一个 lay-filter 属性,例如:
```
<select name="city" lay-filter="city-select">
<option value=""></option>
<option value="1">北京</option>
<option value="2">上海</option>
<option value="3">广州</option>
<option value="4">深圳</option>
<option value="5">杭州</option>
</select>
```
2. 在 JavaScript 中监听 change 事件,并保存上一个选中的值:
```
layui.use('form', function(){
var form = layui.form;
var oldVal; // 保存上一个选中的值
// 监听 select 组件的 change 事件
form.on('select(city-select)', function(data){
// data.value 为当前选中的值
// data.othis 为当前 select 组件的 DOM 对象
if (oldVal && oldVal !== data.value) {
console.log('新值为:' + data.value + ',旧值为:' + oldVal);
}
oldVal = data.value; // 保存当前选中的值
});
});
```
上述代码中,我们在回调函数中使用 oldVal 变量来保存上一个选中的值。在每次选中新的选项时,我们可以通过比较 oldVal 和 data.value 来判断是否有变化,如果有变化,则输出新旧值。需要注意的是,第一次选中时,oldVal 为空,因此需要对其进行判断。
阅读全文