`
peng_jian_ming
  • 浏览: 255346 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

JS调用弹出框并获取返回值

阅读更多
在Web开发中不免会遇到这种问题,在页面中单击按钮调用事件弹出一个对话框,然后选中对话框中的数据,并返回到当前页。
1、首先创建一个方法进行调用弹出框
function selectItem(obj){
var url="/ycportal/Item.jsp?url=contentblock.block.${requestmap.blockkey}.view.list.whseitem";
var str = window.showModalDialog(url,window,"status=off","dialogWidth=140px;dialogHeight=100px");
if (str!=undefined && str.length>0)
{
var dataRow = obj.parentElement.parentElement;
dataRow.cells[0].children[1].value = str[0][0];
dataRow.cells[1].children[0].value = str[0][1];
dataRow.cells[2].children[0].value = str[0][2];
dataRow.cells[3].children[0].value = 1;
}
}
解释:obj为本身对象,是个Button,该对象放在一个表格中,调用方式为:<button  onclick="selectItem(this)"  style="border:1px solid #59AFCD;background:#C0E8F4;" >选择商品</button>
定义变量str来接收弹出框的返回值
2、组织弹出框页面内容
<%@ page contentType="text/html;charset=gb2312" %>

<HTML>
<HEAD><TITLE>商品信息</TITLE></HEAD>
<BODY>
<script language="javascript">
var   arr = new   Array();
function addReturnData(selectArray){
if(selectArray!=null&&selectArray.length>0)
arr[arr.length]=selectArray;
}

function returnData(){
window.returnValue=arr;
window.close();
}

function getArray(){
return arr;
}

function addAndReturnData(selectArray){
if(selectArray!=null&&selectArray.length>0)
addReturnData(selectArray);
returnData();
}
</script>
<iframe scrolling="yes" id="login" frameBorder="0" src='<%="webpublish/"+request.getParameter("url")%>' height="520" width="504">


</iframe>
</BODY>
</HTML>
在弹出框页面利用一个Iframe来进行嵌套内容页面,这样可以使内容页面使用更加灵活,可以进行查询、添加、修改、删除操作而不会跳出弹出框外。
方法解释:首先定义一个数组进行组织内容页面的数据信息并进行返回。方法addReturnData(selectArray)用来向定义的数组中添加数据信息,returnData()方法用来进行返回数据信息,并关闭对话框。addAndReturnData(selectArray)方法是提供内容页面调用的方法,用来进行组织数据。
3、弹出对话框中内容页面的组织
function getItem(obj){
var arr = new Array();
var dataRow = obj.parentElement.parentElement;
arr[0] = dataRow.cells[0].children[1].value;
arr[1] = dataRow.cells[1].innerHTML;
arr[2] = dataRow.cells[2].innerHTML;
window.parent.addAndReturnData(arr);
window.close();
}
<tr align="center" height="20px">
<td><input type="radio" name="select"  onClick="getItem(this)">
<input type="hidden" value="$!data.ITEM_ID"></td>
<td >$!data.ITEM_NAME</td>
<td >$!data.ITEM_CODE</td>
</tr>
方法getItem(obj)用来进行组织数据,并调用父窗体对象中的方法addAndReturnData(arr)用来进行传递数据信息。
分享到:
评论

相关推荐

    怎么通过onclick事件获取js函数返回值(代码少)

    写一个弹出框,绑定onclick事件是好像控制不了它的返回值。代码如下 function createBtn(){ for(var i = 0; i &lt; _this.btn.length; i++){ var btn = document.createElement('span'); btn.id = 'btn_' + i; btn...

    精通javascript

    • 10.9.htm 鼠标感应 弹出警告框 • 10.10.htm 鼠标感应 渐显图片 • 10.11.htm 禁用鼠标右键 第11章(\第11章) • 11.1.htm 省略window的alert&#40;&#41;方法 • 11.2....

    精通JavaScript

    • 10.9.htm 鼠标感应 弹出警告框 • 10.10.htm 鼠标感应 渐显图片 • 10.11.htm 禁用鼠标右键 第11章(\第11章) • 11.1.htm 省略window的alert()方法 • 11.2.htm 未...

    javascript常用对象梳理

    功能:弹出一个警告框,在警告框内显示提示字符串文本。 4. confirm方法 语法格式: window.confirm(提示字符串) 功能:显示一个确认框,在确认框内显示提示字符串,当用户单击“确定”按钮 时该方法返回true,...

    大名鼎鼎SWFUpload- Flash+JS 上传

     file_dialog_start_handler : file_dialog_start_function, 当文件选取对话框弹出前出发的事件处理函数  file_queued_handler : file_queued_function,  file_queue_error_handler : file_queue_error_function...

    JavaScript笔记

    弹出警告:alert&#40;‘字符串’&#41; 强调:1.js区分大小写 2.字符串单双引号不区分 [removed]标签:页面中专门集中编写JavaScript的区域 js的方法定义:function方法名([参数列表]){ 方法体 [return 返回值]...

    ExtAspNet_v2.3.2_dll

    -Grid增加GetNoSelectionAlertInParentReference函数,用来表示没有选中任何一项时在父页面弹出对话框的JS代码。 -修正IE7下不能以下划线作为CSS中类名的前缀的BUG(feedback:Steve.Wei)。 -添加定时器控件Timer,...

    网页与Web程序设计 课件 ppt 机械工业出版社 part1

    13.5 制作弹出菜单 256 13.6 网页切片 258 13.7 制作动画 261 本章小结 263 思考题 263 第14章 Flash 8概述 264 14.1 Flash 8的工作环境简介 264 14.1.1 初识Flash 8 264 14.1.2 文档选项卡 265 14.1.3 时间...

    asp.net面试题

    二、下面哪段javascript能弹出一个提示框?( ) A.document.alert(test) B.window.alert(test) C.document.alert('test ') D.window.alert('test ') 三、当鼠标放在一个链接上的css样式应该( )伪类来定义。 A.a:...

    精易模块[源码] V5.15

    6、新建“外部组合框_关闭列表”关闭已经弹出的下拉列表。 7、修正“文件_下载”不能下载的BUG,感谢易友【@新手来学易】反馈。 8、删除“文本_到小写m”删除该汇编命令,出现不兼容。 9、修正“系统_取MAC地址”未...

Global site tag (gtag.js) - Google Analytics