layer官网:https://www.layui.com/doc/modules/layer.html

layer在线调试:http://layer.layui.com/

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

使用layer.open实现方式:

附:源码如下

layer.open({
//formType: 2,//这里依然指定类型是多行文本框,但是在下面content中也可绑定多行文本框
title: '是否确信将账号临时挂账?',
area: ['300px', '240px'],
btnAlign: 'c',
closeBtn:'1',//右上角的关闭
content: `<div><p>备注:</p><textarea name="txt_remark" id="remark" style="width:200px;height:80px;"></textarea></div>`,
btn:['确认','取消','关闭'],
yes: function (index, layero) {
var value1 = $('#remark').val();//获取多行文本框的值
alert('您刚才输入了:' + value1);
layer.close(index);

//可执行确定按钮事件并把备注信息(即多行文本框值)存入需要的地方

},
no:function(index)
{

alert('您刚才点击了取消按钮');
layer.close(index);

return false;//点击按钮按钮不想让弹层关闭就返回false

},
close:function(index)
{
alert('您刚才点击了关闭按钮');

return false;//点击按钮按钮不想让弹层关闭就返回false
}

});

附:layer.open中按钮点击事件:

layer.open({
content: 'test'
,btn: ['按钮一', '按钮二', '按钮三']
,yes: function(index, layero){
//按钮【按钮一】的回调
},btn2: function(index, layero){
//按钮【按钮二】的回调
alert('这是点击了按钮二');
return false;//点击后不关闭窗口,需返回false
},btn3: function(index, layero){
//按钮【按钮三】的回调
alert('这是点击了按钮三');
return false;//点击后不关闭窗口,需返回false
}
,cancel: function(){
//右上角关闭回调
}
});

用layer.open可以实现弹出文本框及按钮事件,layer.prompt也是在layer.open基础上的封装.....

使用layer.prompt时,

如果文本框输入值是空的话点击确定没有反应,不能向下执行。

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

注:使用layer.prompt时,layer使用的版本为layer-v3.0

官方代码说明如下:

//prompt层新定制的成员如下
{
formType: 1, //输入框类型,支持0(文本)默认1(密码)2(多行文本)
value: '', //初始时的值,默认空字符
maxlength: 140, //可输入文本的最大长度,默认500
}

//例子1
layer.prompt(function(value, index, elem){
alert(value); //得到value
layer.close(index);
});

//例子2
layer.prompt({
formType: 2,
value: '初始值',
title: '请输入值',
area: ['800px', '350px'] //自定义文本域宽高
}, function(value, index, elem){
alert(value); //得到value
layer.close(index);
});

示例代码如下

layer.prompt({

formType:2,

title:'请填写排除原因(注:必填项)',

area:['500px','150px'],

btnAlign:'c'

},function(value,index,elem){

alert(value);

laker.close(index);

});

由官网查看文档可知layer.prompt也是继承layer.open的,所以改成如下所示:

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("输入值为空!");
        }
    }
});

说明:以上弹出的文本框是layer自带的,根据formType指定的,如果自己绑定文本框则可如下尝试:

layer.prompt({
formType: 2,//这里依然指定类型是多行文本框,但是在下面content中也可绑定多行文本框
title: '是否确信将账号临时挂账?',
area: ['300px', '100px'],
btnAlign: 'c',
content: `<div><p>备注:</p><textarea name="txt_remark" id="remark" style="width:200px;height:80px;"></textarea></div>`,
yes: function (index, layero) {
var value1 = $('#remark').val();//获取多行文本框的值
alert('您刚才输入了:' + value1);

//可执行确定按钮事件并把备注信息(即多行文本框值)存入需要的地方

}

});

效果如下:

layer系列之弹层layer.prompt的更多相关文章

  1. 基于layer简单的弹层封装

    /** * 产生长度为32的Guid字符串 */ function getGuid32() { var rt_str = String.fromCharCode(65 + Math.floor(Mat ...

  2. 弹出层layer的使用

    弹出层layer的使用 Intro layer是一款web弹层组件,致力于服务各个水平段的开发人员.layer官网:http://layer.layui.com/ layer侧重于用户灵活的自定义,为 ...

  3. 弹层组件-layer

    layer是Layui的一个弹层组建,功能强大,总之我很喜欢,下面介绍这个组件的基本用法. 首先如果只需要使用layer而不想使用Layui可以单独下载layer组件包,页面引入jquery1.8以上 ...

  4. layer弹层基本参数初尝试

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  5. jquery layer弹窗弹层插件 小巧强大

    /* 先去官网下载最新的js  http://sentsin.com/jquery/layer/ ①引用jquery ②引用layer.min.js */ 触发弹层的事件可自由绑定,如: $('#id ...

  6. 牛逼的 弹出层 layer !!!

    功能强大,实用,操作方便,文档齐全. http://layer.layui.com/api.html 常用功能代码: <!doctype html> <html> <he ...

  7. jquery layer弹窗弹层插件 (转)

    /* 先去官网下载最新的js  http://sentsin.com/jquery/layer/ ①引用jquery ②引用layer.min.js */ 触发弹层的事件可自由绑定,如: $('#id ...

  8. 非常好用的弹出层 layer,常用功能demo,快速上手!

    功能强大,实用,操作方便,文档齐全. 参数灵活,丰富.可以作为开发项目的公共模块,多处使用.老文档地址:http://layer.layui.com/api.html 已经停止维护 新文档地址:htt ...

  9. layer弹层

    获得 layer 文件包后,解压并将 layer 整个文件夹(不要拆分结构) 存放到你项目的任意目录,使用时,只需引入 layer.js 即可. 注意:引入layer.js前必须先引入jquery1. ...

随机推荐

  1. fidder抓包工具使用方法,完整流程

    fidder抓包工具使用方法,完整流程 https://blog.csdn.net/lw545034502/article/details/82150779 版权声明:本文为博主原创文章,遵循 CC ...

  2. 洛谷 P5662 纪念品 & [NOIP2019普及组] (dp,完全背包)

    传送门 解题思路 本题首先要明白,在每一天时,最优策略是先进行操作2(卖),再进行操作1(买),才能是利益最大化. 本题很显然当只有两天时,是一个完全背包,就是把当日价钱当做体积,把明日价格和今日价格 ...

  3. HNUSTOJ-1051 最长的波动序列

    1051: 最长的波动序列 时间限制: 1 Sec  内存限制: 128 MB提交: 47  解决: 13[提交][状态][讨论版] 题目描述 有一个长度为N的整数序列,序列里面的数是两两不同的,现在 ...

  4. 服务性能指标:PV、UV、TPS、QPS

    名词解释 PV Page View,网页浏览量.网页被读者调用浏览的次数.网页每次打开或刷新一次页面,记录一次.用户对同一页面的多次访问,访问量累计. UV Unique Visitor,独立访问者. ...

  5. CSP-S全国模拟赛第二场 【nan】

    A.count 本场比赛最难的题... 隔板法组合数容斥 xjb 搞搞就好了 //by Judge #include<cstdio> #include<iostream> #d ...

  6. html5移动端Meta的设置

    强制让文档的宽度与设备的宽度保持1:1,并且文档最大的宽度比例是1.0,且不允许用户点击屏幕放大浏览 1 <meta name="viewport" content=&quo ...

  7. $strobe$monitor$display

      $strobe:当该时刻的所有事件处理完后,在这个时间步的结尾打印一行格式化的文本,语法$strobe( Argument,...);$fstrobe( Mcd, Argument,...);Mc ...

  8. CIC许可更新

    打开IA软件,点击软件中的[License],可以查看当前许可是否可用或者过期,如果过期,点击下方的[Load License],选择最新的I3许可文件加载,重启电脑.

  9. 3Linux - 常用 Linux 命令的基本使用

    常用 Linux 命令的基本使用 转自 目标 理解学习 Linux 终端命令的原因 常用 Linux 命令体验 01. 学习 Linux 终端命令的原因 Linux 刚面世时并没有图形界面,所有的操作 ...

  10. P4315 月下“毛景树” (树链剖分+边剖分+区间覆盖+区间加+区间最大值)

    题目链接:https://www.luogu.org/problem/P4315 题目大意: 有N个节点和N-1条树枝,但节点上是没有毛毛果的,毛毛果都是长在树枝上的.但是这棵“毛景树”有着神奇的魔力 ...