时间:2021-05-18
Layer做为弹窗,主页面代码:
注意1. callback()方法 返回字符串,再data:JSON.parse(res)转为ajax提交时的json参数
注意2. textarea 上使用append方法没有效果,改写: var str = $("#area").val() + “\n”+d; $("#area").val(str);
//引入js 必须要有(1.8以上版本) jquery <script src="__PUBLIC__/js/jquery.js"></script> <script type="text/javascript" src="__PUBLIC__/js/layer/layer.js"></script> //点击事件,弹出窗口function openCitySelect(){ layer.open({ type: 2, //以frame型式加载content页面 title: "设置区域", shadeClose: true, shade: 0.4, area: ['90%', '90%'], content: "{:U('user/index/citylist')}", //指向页面 btn: ['选择城市','追加城市','关闭'], //底部按钮 yes: function(index){ //当点击‘选择城市'按钮的时候,获取弹出层返回的值 var res = window["layui-layer-iframe" + index].callback(); //打印返回的值,看是否有我们想返回的值。 $.ajax({ url:"{:U('user/index/getListOfCity')}", type:"post", data:JSON.parse(res), success:function(data){ //console.log(data); var a = JSON.parse(data); b = a.length; if (0 >= b) { Wind.use('artDialog',function(){ art.dialog({ id : "alert", icon : "error", content : "请至少选择一个地区", ok : function() {} }); }); }else { var thisCitys = JSON.parse(data); var d=""; var new_arr = []; for (var f = 0; f < thisCitys.length; f++) { if($.inArray(thisCitys[f],new_arr)==-1) { new_arr.push(thisCitys[f]); } } //去重 for(var i=0;i<new_arr.length; i++){ d = isNull(d) ? new_arr[i] : d + ("\n" + new_arr[i]) } // } $("#area").val(d); lineTotal('area'); } }, error:function(e){ alert("错误!!"); } }); //最后关闭弹出层 layer.close(index); }, btn2:function(index){ //当点击‘追加城市'按钮的时候,获取弹出层返回的值 var res = window["layui-layer-iframe" + index].callback(); //打印返回的值,看是否有我们想返回的值。 $.ajax({ url:"{:U('user/index/getListOfCity')}", type:"post", data:JSON.parse(res), success:function(data){ //console.log(data); var a = JSON.parse(data); b = a.length; if (0 >= b) { Wind.use('artDialog',function(){ art.dialog({ id : "alert", icon : "error", content : "请至少选择一个地区", ok : function() {} }); }); }else { var thisCitys = JSON.parse(data); var d=""; var new_arr = []; for (var f = 0; f < thisCitys.length; f++) { if($.inArray(thisCitys[f],new_arr)==-1) { new_arr.push(thisCitys[f]); } } //去重 for(var i=0;i<new_arr.length; i++){ d = isNull(d) ? new_arr[i] : d + ("\n" + new_arr[i]) } // } var str = $("#area").val() + "\n"+d; console.log(str); $("#area").val(str); lineTotal('area'); } }, error:function(e){ alert("错误!!"); } }); //最后关闭弹出层 layer.close(index); }, cancel: function(){ //右上角关闭回调 } }); }弹窗页面的代码:
注意: window.callback 用来将数据返回到主页
<script type="text/javascript" src="__PUBLIC__/js/layui2/layui.js"></script> <script> //加载模块 layui.use('form', function(){ var $ = layui.jquery, form = layui.form ; //返回数据的方法, 在layui中 用window.前缀可以被外面访问到. window.callback = function() { var arr = new Array(); $("#province :checkbox[checked]").each(function(i){ arr[i] = $(this).val(); }); var vals = arr.join(","); var has_pro = $("#pro").is(':checked')?1:0; var has_city = $("#city").is(':checked')?1:0; var has_county = $("#county").is(':checked')?1:0; var has_end = $("#short_name").is(':checked')?1:0; var has_and_pro = $("#pro_city").is(':checked')?1:0; var has_and_city = $("#city_county").is(':checked')?1:0; var result = '{ "provinces":" ' + vals + '","has_pro":"' + has_pro + '","has_city":"' + has_city + '","has_county":"' + has_county + '","has_end":"' + has_end + '","has_and_pro":"' + has_and_pro + '","has_and_city":"' + has_and_city + '"}'; return result; }; }); </script>以上这篇对Layer弹窗使用及返回数据接收的实例详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Kotlinthis详解及实例为了表示当前函数的接收者(receiver),们使用this表达式:在类的成员函数中,this指向这个类的当前对象实例;在扩展函数
介绍一款非常好用的前端弹窗插件:layer官网地址:http://layer.layui.com/根据官方的API:layer的iframe弹窗//iframe
详解Pythonlist与NumPy.ndarry切片之间的区别实例代码:#list切片返回的是不原数据,对新数据的修改不会影响原数据In[45]:list1=
本文实例讲述了jQuery使用ajax方法解析返回的json数据功能。分享给大家供大家参考,具体如下:最近在用jQuery的ajax方法传递接收json数据时发
1.在layer弹窗组件中如果使用了flash播放器,全屏是正常的但若使用了HTML5的播放器,全屏失效举个栗子我是字layer.open({type:1,ti