JS window.open跨页面子页面向父页面传值

该文章演示了如何使用JavaScript在父页面和子页面之间进行数据交互。通过点击按钮在父页面打开子页面,然后在子页面中获取用户输入的数据,调用父页面的函数将数据传回并更新父页面的输入框值。如果数据为空,则显示错误提示。
摘要由CSDN通过智能技术生成

直接写个栗子:

父页面A:

//点击打开页面
<button onclick="open()">打开</button>
<input id="person1" name="" type="text" value=""/>
<input id="person2" name="" type="text"  value=""/>


<script>
    //打开页面
    function open(){
        window.open( 'url' , 'name' , 'features' );
    }
 
    //在子页面中调用此方法
   function DataPerson( person1data,person2data){
        //这里判断从子页面传过来的值不为空
        if( (typeof person1data!= 'undefined' && person1data!= null && person1data!= '')&&(typeof person2data!= 'undefined' && person2data!= null && person2data!= '') ){
         $('#person1').attr('value',person1data)
         $('#person2').attr('value',person2data)
        }else{
            alert('error');
        }  
    }
</script>

子页面B:

<button onclick="submit()">确定/提交</button>
<input id="zhangsan" name="" type="text" value="张三"/>
<input id="lisi" name="" type="text" value="李四"/>

<script>
	submit(){		
		//这里先获取子页面(当前页面)的数据,
	    var person=$(#zhangsan).val();
        var value=$(#lisi).val();
        //获取到当前子页面数据后传到父页面  注意这里调用父页面对应的方法
		window.opener.DataPerson( person,value);
		window.close();
	}
</script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

和风微凉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值