如何在使用layer.prompt在输入值为空的情况下点击确定继续执行逻辑?

2019-04-25 15:48:16

 突然发现在使用LayUI时,用到弹出层layer.prompt时,如果文本框输入值是空的话点击确定没有反应,不能向下执行。

但是我又需要在这种情况下去继续执行判断或逻辑时该怎么做??

  示例:原代码如下:

1
2
3
4
5
6
7
8
9
layer.prompt({
    formType: 2,
    title: '请填写排除原因(注:必填项)',
    area: ['500px''150px'],
    btnAlign: 'c'
}, function(value, index, elem){
    alert(value);
    layer.close(index);
});

   

  去官网查看文档可以知道layer.prompt也是继承layer.open的,所以可以改成如下代码就可以实现刚才描述的需求了,如下所示:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
layer.prompt({
    formType: 2,
    title: '请填写排除原因(注:必填项)',
    area: ['500px''150px'],
    btnAlign: 'c',
    yes: function(index, layero){
        // 获取文本框输入的值
        var value = layero.find(".layui-layer-input").val();
        if (value) {
            alert("输入值为:" + value);
            layer.close(index);
        else {
            alert("输入值为空!");
        }
    }
});

 

 


  • 2019-12-30 16:48:41

    vue provide/inject详解和用法

    父子组件交互方式多种,props、vuex、 、 emit、localStorage还有就是这个provide/inject了。它适合层级比较深的组件,比如子,子孙,子孙后代的组件有好几个用到父组件的某个属性,就可以用到这个provide/inject,它可以避免写大量繁琐的传值代码 我这里为什么要使用它? 我一个知识库详情父组件中包含了大量的子组件,每个子组件都需要父组件的知识库ID,这时候我不想写大量props,就用到provide/inject进行传值了

  • 2020-01-03 00:36:00

    break和continue详解for循环

    1. break:直接跳出当前循环体(while、for、do while)或程序块(switch)。其中switch case执行时,一定会先进行匹配,匹配成功返回当前case的值,再根据是否有break,判断是否继续输出,或是跳出判断(可参考switch的介绍)。 2. continue:不再执行循环体中continue语句之后的代码,直接进行下一次循环。