JAVASCRIPT 通过弹出式对话框获取参数(showModalDialog)
2008-06-04 17:40
489 查看
通过弹出式对话框,打开一个新窗口,经过一番操作后将值返回来,研究了半天,终于搞出一个实例来,供大家分享^_^
测试例子公有两个文件:test1.html、test2.html
1:test1.html文件的内容为:
<script>
function btnclick()
{
var a = window.showModalDialog("test2.htm")
var getvalue ="";
for(i=0;i<a.length;i++)
{
getvalue +=a[i] + ",";
}
var oProName = document.getElementById("t1");
var oProName1 = document.getElementById("t2");
var stringArray = getvalue.split('&&');
var list = stringArray[0];
var list1 = stringArray[1];
var splitArray1 = list.split(/[,]/g);
var splitArray2 = list1.split(/[,]/g);
var text1 = "";
var text2 = "";
for(j=1;j<=splitArray1.length;j++)
{
text1 += splitArray1[j-1];
if(j<splitArray1.length)
{
text1 += " ";
}
}
for(j=1;j<=splitArray2.length;j++)
{
text2 += splitArray2[j-1];
if(j<splitArray2.length)
{
text2 += " ";
}
}
oProName.value = text1;
oProName1.value = text2;
}
</script>
<input type = 'text' name = 't1' id = 't1' value =''/>
<input type = 'text' name = 't2' id = 't2' value =''/>
<input type = 'button' name = 'b1' id = 'b1' value ="GetValue" onclick="btnclick()"/>
2:text2.html的内容为:
<script>
function sendTo(count)
{
var a=new Array(count);
for(i=1;i<=a.length;i++)
{
a[i-1] = i;
}
a.length = 2*count + 1;
for(i=count+1;i<=2*count;i++)
{
a[i]=i;
}
a[count] = '&&';
window.returnValue =a;
window.close();
}
</script>
<body>
<form>
<input value="返回" type=button onclick="sendTo(5)">
</form>
大家看看就知道了。
为什么要使用showModalDialog的原因为:通过showModalDialog调用的新窗口未关闭,不能操作父窗口。
注意:我为什么要在text2.html测试文件中生成的字符串中要加一个"&"符号:是因为通过showModalDialog传递参数时只能获得一个参数,要想得到多个参数,我就想了这个办法,传过来后,我通过split或正则表达式来分开得到多个参数,希望对大家有帮助^_^
测试例子公有两个文件:test1.html、test2.html
1:test1.html文件的内容为:
<script>
function btnclick()
{
var a = window.showModalDialog("test2.htm")
var getvalue ="";
for(i=0;i<a.length;i++)
{
getvalue +=a[i] + ",";
}
var oProName = document.getElementById("t1");
var oProName1 = document.getElementById("t2");
var stringArray = getvalue.split('&&');
var list = stringArray[0];
var list1 = stringArray[1];
var splitArray1 = list.split(/[,]/g);
var splitArray2 = list1.split(/[,]/g);
var text1 = "";
var text2 = "";
for(j=1;j<=splitArray1.length;j++)
{
text1 += splitArray1[j-1];
if(j<splitArray1.length)
{
text1 += " ";
}
}
for(j=1;j<=splitArray2.length;j++)
{
text2 += splitArray2[j-1];
if(j<splitArray2.length)
{
text2 += " ";
}
}
oProName.value = text1;
oProName1.value = text2;
}
</script>
<input type = 'text' name = 't1' id = 't1' value =''/>
<input type = 'text' name = 't2' id = 't2' value =''/>
<input type = 'button' name = 'b1' id = 'b1' value ="GetValue" onclick="btnclick()"/>
2:text2.html的内容为:
<script>
function sendTo(count)
{
var a=new Array(count);
for(i=1;i<=a.length;i++)
{
a[i-1] = i;
}
a.length = 2*count + 1;
for(i=count+1;i<=2*count;i++)
{
a[i]=i;
}
a[count] = '&&';
window.returnValue =a;
window.close();
}
</script>
<body>
<form>
<input value="返回" type=button onclick="sendTo(5)">
</form>
大家看看就知道了。
为什么要使用showModalDialog的原因为:通过showModalDialog调用的新窗口未关闭,不能操作父窗口。
注意:我为什么要在text2.html测试文件中生成的字符串中要加一个"&"符号:是因为通过showModalDialog传递参数时只能获得一个参数,要想得到多个参数,我就想了这个办法,传过来后,我通过split或正则表达式来分开得到多个参数,希望对大家有帮助^_^
相关文章推荐
- 通过javascript获取URL中的参数
- javascript通过正则获取url问号后的参数
- 通过showModalDialog方式新建的子页面获取父页面参数
- 通过showModalDialog方式新建的子页面获取父页面参数
- 通过Javascript获取URL中?后面的参数
- javascript获取超链接传递的参数,此方法亦能解决2个通过js超链页面传递参数的乱码问题
- 通过javascript获得url参数
- javascript 获取URL参数列表
- 通过 JavaScript 获取页面上的鼠标位置
- javascript获取当前url中的参数
- 使用JavaScript获取Request中参数的值方法
- shell通过getopts获取参数
- 不刷新,通过javascript获取数据,!
- JavaScript通过Class Name获取一个对象的数组
- 使用javascript通过className来获取元素
- javascript 获取url参数的正则表达式(用来获取某个参数值)
- javascript 获取url参数(querystring)
- java反射机制,通过类名获取对象,通过方法名和参数调
- 用BootstrapTable展示列表: 通过queryParams传参数到Spring的Controller中,request.getParameter("XXXX")获取不到任何参