layui弹框input输入框的值无法获取的解决办法

319 阅读1分钟

前端bug之旅系列

layui

获取弹框的layui输入框的值

#根据var body= layer.getChildFrame("body",index);来取值
function reset(loginId,userId,obj){
        	 var url = [[@{/user/reset}]]+"?userId="+userId+"&loginId="+loginId;
        	 var context=[[#{MSG_50_05_008}]]+[[${defaultPassword}]];
        	 var url2=[[@{/user/reset/password}]]+"?userId="+userId+"&loginId="+loginId;
            layer.open({
                type: 2,
                anim: -1,
                resize: false,
                shadeClose: false,
                maxmin: true,
                shade: 0.6,
                area: ["300px","160px"],
                content: url2 ,//iframe的url,
                btn:['确定',"取消"],
                btnAlign:'c',
                yes:function (index,layeror) {
                    var body= layer.getChildFrame("body",index);
                    var psVal=$(body).find('#password').val()
                    if (psVal==""||psVal==null||psVal==undefined){
                        psVal="123456q";
                    }
                    url=url+"&password="+psVal;
                    $.ajax({
                        url:url,
                        type : "get",
                        success : function(data) {
                            if(data.data){
                                layer.msg([[#{MSG_50_05_006}]], {
                                    icon: 1,
                                    time: 1000 //1秒关闭(如果不配置,默认是3秒)
                                },function(){
                                    $(obj).parent("td").parent("tr[name='userInfo']").find("td[name='password']").text(psVal);
                                    layer.close(index);
                                });
                            }else{
                                layer.msg([[#{MSG_50_05_007}]], {
                                    icon: 2,
                                    time: 1000 //1秒关闭(如果不配置,默认是3秒)
                                });
                            }
                        }
                    });
                },
                btn2: function (index,layeror) {

                }
            });