原生js中打开另一个窗口页面,选择数据后传递给当前页面中
当前页面:
<input id=bankNo v-model=bankNo name=bankNo></input> <button @click=goPage()>跳转页面获取数据</button>
goPage:function(){ window.open(http://test.biz.sinosure.com.cn/biz/CreditBuyer.html) }
跳转到第二个页面进行选择:
<div> <span>这是像要的数据:</span> <div v-model=data></div> </div> <button @click=select()>选择</button>
select:function(){ // 选择后数据传递给第一个页面 let parwindow = self.opener
// 给父页面中的元素进行赋值 parwindow.document.getElementById(bankNo).value = this.data }
此时第一个页面中id为bankNo的input中的已经有值了,但是由于是操作DOM修改的元素内容,所以该input上面v-model中的bankNo还没有值,所以第一个页面需要监听元素变化以后给v-model中的元素赋值
第一个页面中跳转的时候进行监听:
goPage:function(){ window.open(http://test.biz.sinosure.com.cn/biz/CreditBuyer.html) var simTime = setInterval(function(){ let str = document.getElementById(bankNo).value if(str){ this.bankNo = str // v-model中bankNo有值以后,清除定时器 clearInterval(simTime) } }) }