如何将弹出窗口更改为基本页面

时间:2019-01-18 08:15:19

标签: javascript

我在弹出窗口中有一个Javascript代码。现在,我需要使用它而不会弹出。这意味着在由iframe组成的页面中。

在iframe中,有一个页面,其形式为“ ChatMsg”,文本字段为“ mesg”。

所以我需要在主页上放置onclick脚本,它应该将值传递到iframe页面。

我为iframe添加了一个ID,iframe ID为btnLocFrame

首页中的当前代码是下面给出的前两个代码部分,形式在代码的第三部分(iframe的源页面)中。

我试图通过将window.opener更改为window.top来更正代码,但这不起作用

<a href="javascript:pick(':IG');" alt=":IG" title=":IG"><img class="img-responsive" src="https://www.onlanka.com/chat/converts/smile7.gif"></a>   


<script language="javascript">
function pick(symbol) {
if(window.opener) window.opener.document.chatMsg.mesg.value += (window.opener.document.chatMsg.mesg.value == "") ? symbol : " " + symbol;
}
</script>
<form name="chatMsg">
<input type="text" name="mesg" id="mesg" maxlength="512" value="" autocomplete="Off">
</form>

我曾希望在单击链接后将链接的分配值传递到表单文本字段中,但这不起作用。

请帮助我更正代码

1 个答案:

答案 0 :(得分:1)

当您尝试使用模态将Imoji代码插入Iframe元素时,尝试如下更改pick函数

function pick(symbol) {

  var iframe = document.getElementById('btnLocFrame');
  var innerDoc = (iframe.contentDocument) ? iframe.contentDocument : iframe.contentWindow.document;

  var oldValue = innerDoc.getElementById("mesg").value;

  innerDoc.getElementById("mesg").value = oldValue + symbol;

  //if (window.opener) window.opener.document.chatMsg.mesg.value += (window.opener.document.chatMsg.mesg.value == "") ? symbol : " " + symbol;
}