js传值

 

 

JS传值

父页面弹出子页面对话框,若传值,通常情况下使用的是get方式传值,也就是拼参数串,通过URL传递参数。

这种传值方式有以下问题(只针对弹出页面对话框这种情况):

1 参数不需要变化时,传给服务器后又传回页面,浪费资源。

2 若参数为中文参数,可能会出现乱码现象。

3 参数若是很多的情况下,可能会传参失败,因为get方式传值是有长度限制的。

 

JS传值,不需要经过服务器的中间转接发送。

若父页面到子页面单向传值:

父页面:

    function openChild(){

window.showModalDialog('child.jsp',{params:['中国','河南']},'dialogHeight=620px;dialogWidth=700px; status=no');

    }

 

子页面:

<script type="text/javascript">

       

        var params =window.dialogArguments.params; //接收父页面参数

        var country =params[0];

        var province =params[1];

       

        function setValue(){

            document.getElementById('country').value = country;

            document.getElementById('province').value = province;

           

        }

       

     </script>

 

 

若父页面到子页面传值并接收子页面返回值时:

父页面:

    function openChild(){

var value = window.showModalDialog('child.jsp',{params:['中国','河南']},'dialogHeight=620px; dialogWidth=700px; status=no');

alert(value); //对返回值进行操作

    }

 

子页面:

<script type="text/javascript">

       

        var params =window.dialogArguments.params; //接收父页面参数

        var country =params[0];

        var province =params[1];

       

        function setValue(){

            document.getElementById('country').value = country;

            document.getElementById('province').value = province;

           

           window.returnValue = ‘返回值’; //子页面向父页面返回值。

        }

       

     </script>

 

以上就是JS传值的使用。

 

你可能感兴趣的:(function,服务器,url)