说明一下下面都是我在做项目时的方法但查window.showModalDialog();会弹出当前页面脚本发生错误时没有方法所以我选择一个自认为可以的方法解决这个问题


一、首先说说我要做的效果是什么:

如下表 我要点击详细请点击就会弹出一个二级菜单

然后我会在二级菜单中可以有下载选项可供下载


二、   window.open() 及 window.showModalDialog()的格式及台数

2.1  window.open()

2.1.1基本语法

window.open(pageURL,name,parameters) 
其中:
pageURL  为子窗口路径  
name  为子窗口句柄  
parameters  为窗口参数 ( 各参数用逗号分隔 )

2.1.2示例

<SCRIPT>
<!--
window.open ('page.html','newwindow','height=100,width=400,top=0,left=0,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no, status=no')
//写成一行
-->
</SCRIPT>

2.2   window.showModalDialog()

2.2.1基本语法

vReturnValue =window.showModalDialog(sURL [, vArguments] [,sFeatures])

sURL       --     必选参数,类型:字符串。用来指定对话框要显示的文档的URL。

vArguments--   可选参数,类型:变体。用来向对话框传递参数。传递的参数类型不限,包括数组等。

2.2.2例子(转)

参数传递:

1. 要想对话框传递参数,是通过vArguments来进行传递的。类型不限制,对于字符串类型,最大

为 4096 个字符。也可以传递对象,例如:

-------------------------------
parent.htm
<script>var obj = new Object();obj.name="51js";window.showModalDialog("modal.htm",obj,"dialogWidth=200px;dialogHeight=100px");
</script>
modal.htm
<script>var obj = window.dialogArgumentsalert("您传递的参数为:" + obj.name)
</script>
-------------------------------

2. 可以通过window.returnValue向打开对话框的窗口返回信息,当然也可以是对象。例如:

------------------------------
parent.htm
<script>str =window.showModalDialog("modal.htm",,"dialogWidth=200px;dialogHeight=100px");alert(str);
</script>
modal.htm
<script>window.returnValue="http://homepage.yesky.com";
</script>

用window.showModalDialog 或者window.showModelessDialog打开一个模式窗口后,和父窗口的一些交互问题。

要进行交互操作的前提,在调用showModalDialog或者showModelessDialog方法的时候,第二个参数传window,如:

1.                             window.showModelessDialog('filename.htm',window,'dialogWidth=200px;dialogHeight=250px;')

接下来,就是取得父窗口的一些数据和方法,这是经常会用的,父窗口取子窗口的参数一般通过returnValue就可以搞定了~

1.                             //取得父窗口的JS变量 var

window.dialogArguments.var;

//获得父窗口的对象和属性

window.dialogArguments.form1.name.value ;

//调用父窗口的方法 fun

window.dialogArguments.fun() ;

例:

a.htm:

<SCRIPT language="javascript">
<!--
function OpenWin()
{
var getv = showModalDialog("eg.htm", "egwin", "dialogWidth:420px; dialogHeight:220px;status:no;help:yes");
if (getv != null)
{
TextInfo.value=getv.split(",")[0];;
aa.value=getv.split(",")[1];;
}
}//-->
</SCRIPT>
</head>
<input type="text" name="TextInfo">
<input type="text" name="aa">
<input type="button" name="Submit" value="打开" onClick="OpenWin()">

eg.htm:

<SCRIPT language="javascript">
<!--
function GetValue()
{
window.returnValue=TextName.value+","+aa.value;
window.close();
}//-->
</SCRIPT><input name="TextName" type="text" id="TextName" value="因为有你而精彩">
<input name="aa" type="text" id="aa" value="MKLove">
<input type="button" name="Submit" value="关闭" onClick="GetValue()">
</p>
</div>
</body>
</html>

三、遇到的问题

3.1、 js中要如何才能取到jsp遍历的值

(这是我自己的方法如果还有其他方法麻烦留言指导一下)

一般用到二级页面我们会想到js中写但不能准确的传到值所以我在直接在<a>标签onclick那写js

<c:forEach><a herf="#" οnclick="window.showModalDialog('${pageContext.request.contextPath} /downFilep.jsp?foreignIdf=${vo.foreignIdf}',null,'dialogWidth:450px;dialogHeight:150px');">详细请点击</a></td> </ c:forEach >

3.2用window.showModalDialog()会在第二级页面点击下载时会出现以下界面

这个时候可以百度一下你就可以知道好多知识(废话)

百度有:

所以我用了window.open()

<a herf="#"οnclick="window.open('${pageContext.request.contextPath} /downFilep.jsp?foreignIdf=${vo.foreignIdf}','_blank','width=450px,height=150px,top=300px,left=450px,titlebar=no,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no');">详细请点击</a></td>

四、我的代码

Archivefiles.jsp

<!--  省略一部分 ---><table>
<c:forEach>
<!--  省略一部分 --->
<tr><a herf="#"οnclick="window.open('${pageContext.request.contextPath} /downFilep.jsp?foreignIdf=${vo.foreignIdf}','_blank', 'width=450px,height=150px,top=300px,left=450px,titlebar=no,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no');">详细请点击</a>
</tr>
</c:forEach>
</table>

Downfilep.jsp

<%@ page language="java" pageEncoding="utf-8" %>
<%@ page contentType="text/html;charset=utf-8"%>
<%@ include file="/talent/base/talenttemplate2.jsp" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%
String foreignIdf=request.getParameter("foreignIdf");
%>
下载详细:
<!-- -->
<form action="${pageContext.request.contextPath}/downFilep.action"  enctype="multipart/form-data" method="post">< downloadf foreignId="<%=foreignIdf %>"  userTypef="1" disabled="true"></ downloadf ><!-- 这个是自己做的标签主要是用于下载  -->
</form>

【注】这只是一部分代码 我用SSI的所以action及struts的配置都没有写出来这些都可以在度娘,谷哥找到的

还有这个只是我的问题,有其他建议请留言指导一下!!

window.showModalDialog();会弹出当前页面脚本发生错误部分解决方法相关推荐

  1. html超链接跳出脚本错误,Windows7打开网页弹出当前页面的脚本发生错误如何解决?...

    Windows系统发生脚本错误时常常伴随着黄色感叹号的弹框提示"当前页面的脚本发生错误",这种情况大多发生在打开浏览器浏览网页的时候,由于IE组件出现异常所致,所以用户在解决这个问 ...

  2. 计算机网页加载失败如何解决方法,如何解决“当前页面脚本发生错误”的问题...

    最近打开网页的时候经常会弹出"当前页面脚本发生错误"对话框,很令人厌烦.每次打开页面都弹出一次,然后底部会提示:是否要在此页面上继续运行脚本?我们可以选的是或者否,选择之后当前页面 ...

  3. html转chm后脚本错误,win10系统打开chm资料弹出窗口提示脚本出现错误的恢复办法...

    有关win10系统打开chm资料弹出窗口提示脚本出现错误的操作方法想必大家有所耳闻.但是能够对win10系统打开chm资料弹出窗口提示脚本出现错误进行实际操作的人却不多.其实解决win10系统打开ch ...

  4. wpf使用webbrowser时提示当前页面脚本发生错误_win7系统internet脚本错误的应对办法...

    最近有win7系统用户反馈,上网时遇到ie浏览器总会提示internet脚本错误的问题,不知如何解决,为此非常苦恼,那么win7系统提示internet脚本错误怎么办呢?就此问题,下面小编教你win7 ...

  5. badboy页面脚本发生错误,解决方案

    badboy页面脚本发生错误,解决方案 参考文章: (1)badboy页面脚本发生错误,解决方案 (2)https://www.cnblogs.com/ouyy/p/yaoyao.html (3)ht ...

  6. mysqld.exe已停止工作_win7一直弹出DrUpdate.exe已经停止工作的解决方法

    ‍‍ 有很多win7 32位旗舰版用户在更新qq之后电脑开机总是会弹出DrUpdate.exe已经停止工作的窗口,点击关闭程序后下次还是会弹出,这是怎么回事呢?DrUpdate.exe是腾讯的一个更新 ...

  7. PROE问题解决【开机显示thumbnail viewer未安装】【打开出现“当前页面脚本发生错误”】

    开机显示thumbnail viewer未安装 错误提醒如下: 解决办法如下: 摘录于:http://www.proewildfire.cn/thread-123471-1-1.html 打开出现&q ...

  8. 360安全浏览器右击不显示审查元素 或按F12不弹出开发人员工具的原因和解决方法:设为极速模式

    360安全浏览器右击不显示审查元素 或按F12不弹出开发人员工具的原因和解决方法:设为极速模式 参考文章: (1)360安全浏览器右击不显示审查元素 或按F12不弹出开发人员工具的原因和解决方法:设为 ...

  9. 不能创建对象qmdispatch_XP突然弹出“automation 服务器不能创建对象”的有效解决方法...

    在使用XP系统的过程中,总会遇到各种奇葩故障,近期,有位网友说XP系统打开程序突然弹出"automation服务器不能创建对象"的提示(如下图所示),关闭窗口后又会反复出现,对于这 ...

最新文章

  1. 最萌算法学习来啦,看不懂才怪!
  2. eclipse MAT分析heap dump
  3. 一个java处理JSON格式数据的通用类(四)
  4. 在alv list小计之后输出分割线
  5. .net 实现文件下载2
  6. win10安装dockerx docker的常见命令 可以子腾讯云上做做练习
  7. linux核显驱动与内核冲突,英特尔第十二代核显现身Linux驱动库
  8. Linux——安装之磁盘分区
  9. 小米重磅新机Mimoji萌拍被指抄袭 官方怒回应:将追查到底!
  10. win2003(sp2 x86)+iis6+php-5.3.5-Win32 配置
  11. python读取数据文件、并把里面的数据变成x的二维坐标_(数据科学学习手札60)用Python实现WGS84、火星坐标系、百度坐标系、web墨卡托四种坐标相互转换...
  12. 新浪的动态策略灰度发布系统:ABTestingGateway
  13. 为什么要使用向量化?
  14. MyBatis3简介
  15. 二十分钟精通排版神器Markdown,从此word和秀米是路人
  16. 网红书店的“关门潮”与场景阅读的“科技浪”
  17. 前端之文本、长度、颜色、字体、背景-36
  18. 固定收益证券读书笔记(一)
  19. Python-玩转数据-python ftp下载文件
  20. 智慧交通落地关键:如何利用AI视频分析技术来改善交通?

热门文章

  1. gcIPtoHostQueue.exe
  2. 玩赚你的网站-网站运营必备手册
  3. 移动Web(rem less Vw/Vh/bootstra)
  4. DS1307的设置问题和经验
  5. Python读取上证指数csv
  6. 如何拿到一个图片的二进制数据
  7. Codeforces Round #563 (Div. 2) F. Ehab and the Big Finale
  8. hifiasm的使用方法
  9. python随机批量爬qu短视频——学习中
  10. Django(四):ORM模型的增删改成操作+图片字段的处理