最近在项目中看到这样一种效果——点击当前网页文本框,然后弹出一个缩小的网页,并在网页里选择或填写数据,然后又返回当前网页,小网页关闭。感觉非常不错,其实在以前网上也看见过,只是当时没有留心。今天抽时间把它从项目中提炼出来,给自己做一个笔记,以备下次只需。不废话了。

第一步新建两个页面分别取名为A.html,B.html.

第二步编写页面代码如下

A.html页面

<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>demoA页面</title>
<script type="text/javascript">
function PopBreakfast(obj) {
var returnValue = window.showModalDialog("B.html", obj, "dialogWidth=300px;dialogHeight=150px");
alert(returnValue);
if (returnValue) {
obj.value = returnValue;
} }
</script>
</head>
<body>
<form id="form1" action="">
<table>
<tr>
<td>城市</td>
<td><input type="text" id="txtcity" onclick="PopBreakfast(this)"/></td>
<td>地址</td>
<td><input type="text" id="txtaddress" onclick="PopBreakfast(this)"/></td>
</tr>
</table>
</form>
</body>
</html>

B.html页面

<html>
<head>
<title>demoB页面</title>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<style type="text/css">
body
{
font-size: 12px;
font-family: arial;
}
select, input
{
padding: 0px;
margin: 0px;
}
#content-wrapper
{
margin: 20px 0px 20px 20px;
}
#content-wrapper td
{
text-align: left;
padding: 2px;
}
#content-wrapper td.title
{
font-weight: bold;
}
input.city
{
width: 180px;
}
select.city
{
width: 180px;
}
.confirm-btn
{
padding: 2px;
}
</style>
<script type="text/javascript">
function Confirm() {
var selectValue = document.getElementById("selectcity").value;
var inputValue = document.getElementById("txtaddress").value;
if (inputValue.length > 0) {
window.returnValue = inputValue;
} else {
window.returnValue = selectValue;
}
alert(window.returnValue);
window.close();
} window.onclose = function () {
window.returnValue = "";
}
</script>
</head>
<body>
<form id="form2" >
<center>
<div id="content-wrapper">
<table cellpadding="0" cellspacing="0" width="250px">
<tr>
<td class="title">
选择城市
</td>
</tr>
<tr>
<td>
<select id="selectcity" class="city">
<option value="">-- Select --</option>
<option value="北京">北京</option>
<option value="广州">广州</option>
<option value="上海">上海</option>
<option value="香港">香港</option>
</select>
</td>
</tr>
<tr>
<td>
<input id="txtaddress" type="text" class="city" />
</td>
</tr>
<tr>
<td>
<input type="button" value="Confirm" onclick="Confirm()" class="confirm-btn" />
</td>
</tr>
</table>
</div>
</center>
</form>
</body>
</html>

第三步测试,结果如下图:

开始页面A

点击后弹出窗体效果图:

选中填写之后的效果:

经测试必须 在iis里或vs里运行才可以看到效果,否则有跨域错误。

错误提示:Uncaught SecurityError: Blocked a frame with origin "null" from accessing a frame with origin "null". Protocols, domains, and ports must match.

好了,这也算是一个新的开始吧。

还有另外一种方法

再有另外一种方法

web跨页弹窗选值的更多相关文章

  1. A在SP.NET跨页多选

    在ASP.NET跨页多选 本文介绍怎样在ASP.NET中实现多页面选择的问题.其详细思路非常easy:用隐藏的INPUT记住每次选择的项目,在进行数据绑定时.检查保存的值,再在DataGrid中进行选 ...

  2. Bootstrap table 跨页全选

    此代码是针对于bootstrap table中分页的跨页全选. 以下是整个bootstrap的定义 <script type="text/javascript" src=&q ...

  3. Element UI表格组件技巧:如何简洁实现跨页勾选、跨页统计功能

    业务场景 在使用Element UI的Table组件时,常常面对这样的业务需求: 表格数据的每一项都要提供勾选框,当切换分页时,能够记忆所有页面勾选的数据,以实现批量提交不同页面勾选数据的功能.并且, ...

  4. element ui表格常用功能如:导出 新增 删除 多选 跨页多选 固定表头 多级表头 合并行列 等常见需求

    <template> <div class="table-cooperte"> <el-table :data="tableData&quo ...

  5. layui table 跨页记忆选择

    layui 表格功能目前默认不支持跨页记忆选择 下面来实现layui table跨页记忆选择实现 基于layui版本 1.4.5 表格跨页通用方法 //表格分页复选框 layui.define(['j ...

  6. 每日学习心得:Js获取Checkboxlist所选值、instanceof 和typeof区别、为Array添加contains方法

    2013-11-24 前言: 上周在工作中遇到了一些跟JS以及前台交互的问题,虽然算不上多么高深,但是在解决时也走了一些弯路,所以就总结一下. 1.    JS获取checkboxList所选的值 这 ...

  7. 要在一般处理程序中获取其他页面的session值

    1.要在一般处理程序中获取其他页面的session值,需要引用名空间: using System.Web.SessionState; 2.然后继承一个接口:IRequiresSessionState, ...

  8. Candence下对“跨页连接器(off-page connector)”进行批量重命名的方法

    parts.ports.alias等等均可以在“属性编辑器(Property Editor)”中进行查看编辑,并通过复制到Excel等表格软件来进行批量修改.之后再粘贴回去的方法进行批量编辑.但是“跨 ...

  9. Web跨浏览器进程通信(Web跨域)

    Web跨域已是老生常谈的话题,这次来尝试下跨域浏览器进程之间的通信 —— 这在过去基本依靠网络中转实现   在之前一篇文章里尝试了跨浏览器的数据共享,最后提到使用LocalConnection还可以实 ...

随机推荐

  1. Selenium2学习-018-WebUI自动化实战实例-016-自动化脚本编写过程中的登录验证码问题

    日常的 Web 网站开发的过程中,为提升登录安全或防止用户通过脚本进行黄牛操作(宇宙最贵铁皮天朝魔都的机动车牌照竞拍中),很多网站在登录的时候,添加了验证码验证,而且验证码的实现越来越复杂,对其进行脚 ...

  2. 2.准备Python编译环境

    2.准备Python编译环境 2.1下载Python2.7.6.tgz.ipython1.2.1.tgz.sqlite-autoconf-3071401.tar.gz 2.2安装Python2.7.6 ...

  3. 图像分割之(二)Graph Cut(图割)

    zouxy09@qq.com http://blog.csdn.net/zouxy09 上一文对主要的分割方法做了一个概述.那下面我们对其中几个比较感兴趣的算法做个学习.下面主要是Graph Cut, ...

  4. 呛口大话APP 移动端到底怎么玩

    [上海站]活动概况 时间:2016年04月09日13:30-16:30 地点:上海市黄浦区黄陂北路227号中区广场105室WE+联合办公空间 主办:APICloud.七牛.听云 报名网址:http:/ ...

  5. Linux 中的零拷贝技术,第 1 部分

    概述 本系列由两篇文章组成,介绍了当前用于 Linux 操作系统上的几种零拷贝技术,简单描述了各种零拷贝技术的实现,以及它们的特点和适用场景.本文是本系列文章的第一部分,主要是介绍一些零拷贝技术的相关 ...

  6. python_递归

    1.  递归示例 #coding:utf-8 #递归进行阶乘 def mm(num): if(num == 1): return 1 else: return mm(num-1) * num prin ...

  7. Visual Studio Debugger AutoExp.dat & Visualization Framework

    bing.com搜索: autoexp.dat 参考资料: AutoExp.dat http://www.virtualdub.org/blog/pivot/entry.php?id=120 http ...

  8. kfed (kernel file editor:内核文件编辑器)

    kfed是没有在文档中标出的asm工具,在oracle 11gR1中被引入.可以被用来读写asm元数据,特别是磁盘头和asm元数据的内容. kfed是一个单独的工具,不依赖与asm实例,所以可以对mo ...

  9. 更改Mysql数据库中的数据出现乱码问题

    数据库服务器环境:windows 7 专业版 Mysql版本:5.5.36 出现问题:搭完工程之后,在做保存和插入操作时,涉及的数据在数据库中为变为乱码. 解决方案:         MySQL数据库 ...

  10. Java基础之处理事件——使用动作Action(Sketcher 6 using Action objects)

    控制台程序. 动作Action是任何实现了javax.swing.Action接口的类的对象.这个接口声明了操作Action对象的方法,例如,存储与动作相关的属性.启用和禁用动作.Action接口扩展 ...