热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

layui两个html传值,Layui跳转传参、父子页面

使用parent.xadmin.add_tab()方法打开新的标签页重点是这个parent,折磨了我一下午,原来是没有搞清应该从父页面打开。最开始的xa

使用parent.xadmin.add_tab()方法打开新的标签页

重点是这个parent,折磨了我一下午,原来是没有搞清应该从父页面打开。最开始的xadmin.add_tab()是用在左边菜单上的,点击就会增加新的标签页,这个才是父页面。

使用X-admin(Layui)前端框架,在打开新Tab页面内刷新其他Tab页面解决方案(表单数据多可以使用open弹框全屏)

使用X-admin(Layui)前端框架,从数据列表页点击弹框(open)的添加页面,然后添加成功关闭弹框且刷新列表页,这种情况比较常见代码如下:

// 获得frame索引

var index = parent.layer.getFrameIndex(window.name);

//关闭当前frame

parent.layer.close(index);

window.parent.location.reload();

如果是添加页面的字段很多,打开新的Tab页面的话,就不能使用以上代码,我的解决方案是代码如下:

————————————————

版权声明:本文为CSDN博主「似水往昔浮流年 ♚」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/qiaoshuai0920/article/details/103414005

//重新调用打开list页面,并且刷新。

parent.xadmin.add_tab('列表','list.action',true);

//关闭当前tab页面 必须后关闭。

xadmin.del_tab();

前一个页面的检查语句可能会使后一个页面提交失败,并返回到前一页面

这个bug隐藏地非常深,我一开始写了新增合同页面,通过“下一步”的按钮跳转到添加合同条款的页面,结果可以跳转,合同编号也传递正确了,但是条款信息提交时却又返回到了上一页面。

因为某种机缘巧合而发现了原来是新增合同页面的form检查语句form.verify{}不让我提交……至于原因,可能是我把不该写的东西写在了form.verify{}里吧……改得太快,没注意具体原因。

使用layui的layer.open打开页面并传入参数

layui.use(['jquery','form','layer'], function(){

var $ = layui.jquery,

layer = layui.layer,

form = layui.form;

///预览

$('#preview').on('click',function() {

var w = ($(window).width() * 0.7);

var h = ($(window).height() - 50);

layer.open({

resize: false,

title: '预览',

shadeClose: true,

area: [w + 'px', h + 'px'],

type: 2,

content: '/common/html/preview.html',

success: function (layero, index) {

var body = layer.getChildFrame('body', index);

body.find('#content').append(editor.txt.html());

}

});

});

});

使用layui的form进行ajax提交操作时必须return false防止表单跳转

我的理解是如果不return false,传的参数会被页面自动刷新掉。

Layui form表单提交注意事项

最后return false防止页面刷(form表单提交后如果请求原来的页面尾后没有参数?id=之类的参数请求,可以不返回false)),

http://localhost:8080/jump/jumpToPages?flag=5请求原页面大有参数,必须返回false,不然页面获取不到参数 报错

// 表单提交

form.on('submit(first1)', function (data) {

var articleFrom = data.field;

$.ajax({

type:"POST",

url:"/user/upDate",

data:articleFrom,

dataType:"JSON",

success:function (data) {

if(data.flag){

layer.closeAll();

}

}

});

return false;

});

实现上一步与下一步

Q:弹窗弹出一个表单,然后点击下一步的时候再弹出来一个表单 然后点击提交的时候再把所有内容都提交给后台,如何实现?

A:你的弹出层里面可以放两个表单,先隐藏第二个表单,点击下一步的时候在隐藏第一个显示第二个,这中间可以layer.load几秒后再出现,再一起把表单提交。

实在想用两次弹出层来实现也行,点击下一步的时候layer.getChildFrame('body', index)把第一个表单赋给一个变量,弹出第二个表单,同样获取表单值一起提交就行了。

Q:在提交表单后,给出提交成功信息,然后怎么关闭当前表单页面,跳转到并刷新列表页面。怎么让新添加的数据显示在列表页面的首行。

A:

1.关闭页面

如果你是使用 layui.open 打开的新页面可以参考 https://www.layui.com/doc/modules/layer.html#layer.close

var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引

parent.layer.close(index); //再执行关闭

2.关闭当前页,刷新父页面

window.parent.location.href = url (可以试试这个)

3.至于添加的数据显示在最前面,这个需要后台去处理,按照新增时间倒序或者是排序号排序都可以的。



推荐阅读
  • Spring Boot 中静态资源映射详解
    本文深入探讨了 Spring Boot 如何简化 Web 应用中的静态资源管理,包括默认的静态资源映射规则、WebJars 的使用以及静态首页的处理方法。通过本文,您将了解如何高效地管理和引用静态资源。 ... [详细]
  • SpringMVC RestTemplate的几种请求调用(转)
    SpringMVCRestTemplate的几种请求调用(转),Go语言社区,Golang程序员人脉社 ... [详细]
  • 深入解析SpringMVC核心组件:DispatcherServlet的工作原理
    本文详细探讨了SpringMVC的核心组件——DispatcherServlet的运作机制,旨在帮助有一定Java和Spring基础的开发人员理解HTTP请求是如何被映射到Controller并执行的。文章将解答以下问题:1. HTTP请求如何映射到Controller;2. Controller是如何被执行的。 ... [详细]
  • 在PHP后端开发中遇到一个难题:通过第三方类文件发送短信功能返回的JSON字符串无法解析。本文将探讨可能的原因并提供解决方案。 ... [详细]
  • 在高并发需求的C++项目中,我们最初选择了JsonCpp进行JSON解析和序列化。然而,在处理大数据量时,JsonCpp频繁抛出异常,尤其是在多线程环境下问题更为突出。通过分析发现,旧版本的JsonCpp存在多线程安全性和性能瓶颈。经过评估,我们最终选择了RapidJSON作为替代方案,并实现了显著的性能提升。 ... [详细]
  • 并发编程 12—— 任务取消与关闭 之 shutdownNow 的局限性
    Java并发编程实践目录并发编程01——ThreadLocal并发编程02——ConcurrentHashMap并发编程03——阻塞队列和生产者-消费者模式并发编程04——闭锁Co ... [详细]
  • CSS高级技巧:动态高亮当前页面导航
    本文介绍了如何使用CSS实现网站导航栏中当前页面的高亮显示,提升用户体验。通过为每个页面的body元素添加特定ID,并结合导航项的类名,可以轻松实现这一功能。 ... [详细]
  • 深入解析Spring启动过程
    本文详细介绍了Spring框架的启动流程,帮助开发者理解其内部机制。通过具体示例和代码片段,解释了Bean定义、工厂类、读取器以及条件评估等关键概念,使读者能够更全面地掌握Spring的初始化过程。 ... [详细]
  • 本文详细介绍了如何在Kendo UI for jQuery的数据管理组件中,将行标题字段呈现为锚点(即可点击链接),帮助开发人员更高效地实现这一功能。通过具体的代码示例和解释,即使是新手也能轻松掌握。 ... [详细]
  • yikesnews第11期:微软Office两个0day和一个提权0day
    点击阅读原文可点击链接根据法国大选被黑客干扰,发送了带漏洞的文档Trumps_Attack_on_Syria_English.docx而此漏洞与ESET&FireEy ... [详细]
  • 在Fedora 31上部署PostgreSQL 12
    本文详细介绍如何在Fedora 31操作系统上安装和配置PostgreSQL 12数据库。包括环境准备、安装步骤、配置优化以及安全设置,确保数据库能够稳定运行并提供高效的性能。 ... [详细]
  • Python包管理工具pip的使用指南
    本文详细介绍了如何使用pip进行Python包的安装、管理和常见问题的解决方法,特别针对国内用户提供了优化建议。 ... [详细]
  • 深入解析ESFramework中的AgileTcp组件
    本文详细介绍了ESFramework框架中AgileTcp组件的设计与实现。AgileTcp是ESFramework提供的ITcp接口的高效实现,旨在优化TCP通信的性能和结构清晰度。 ... [详细]
  • 本文将详细介绍如何在没有显示器的情况下,使用Raspberry Pi Imager为树莓派4B安装操作系统,并进行基本配置,包括设置SSH、WiFi连接以及更新软件源。 ... [详细]
  • 本文详细介绍了如何使用 HTML 和 CSS 对文件上传按钮进行样式美化,使用户界面更加友好和美观。 ... [详细]
author-avatar
kiki百乐门_867
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有