2016-08-15 421 views
0

所以我正在聊天应用程序,我想添加表情。所以我使用了两个html页面。第一个包含文本区域,当我们赖特的消息和一个引用第二个html页面的iframe。如何链接两个HTML页面

<div class="col-12"> 
    <textarea class="col-12 row-12 var_MessageInput" id="textmsg" placeholder="Write a reply..."></textarea> 
</div> 
在第二html页面

我有笑脸图片

<img src="../../../images/sad_smile.gif" onclick="insertSmiley('sad');"/> 
<img src="../../../images/angel_smile.gif" onclick="insertSmiley('angel');"/> 
<img src="../../../images/happy_smile.gif" onclick="insetSmiley('happy');" /> 

所以我想这是一个文本得到了插在我的文字区域,当我点击一个笑脸图片,因此我用下面的脚本

function insertSmiley(smiley) { 
    var currentText = document.getElementById("textmsg"); 
    var smileyWithPadding = " " + smiley + " "; 
    currentText.value += smileyWithPadding; 
    currentText.focus(); 
} 

但它好好尝试工作:(我想这个问题可能是因为的document.getElementById这是另一个HTML网页,但我不知道如何解决它。 非常感谢

+0

尝试'parent.document.getElementById(“textmsg”);' – TheUknown

+0

感谢您的回答,但它仍然无效。 – Chaymae

+0

控制台中是否有错误?在哪个页面上是“insertSmiley”函数。你有没有检查调试器,它是否触及该功能?你能否为这两个文件添加完整的代码,例如parent和iframe,或者可以在日志中设置一个小提琴 – TheUknown

回答

0
  1. 你有没有包含在iframe中<script src="Scripts_Chatapp/emoticone.js"></script>吗?如果是,请从iFrame中删除脚本引用。

  2. 将页脚顶部的脚本引用<script src="Scripts_Chatapp/emoticone.js"></script>与其他脚本标记一起移动。

  3. onclick="insertSmiley('sad');"更改为onclick="parent.insertSmiley('sad');"

这将调用父函数并在该页面上进行更改,因为父元素上存在元素。

+0

非常感谢它的工作:D – Chaymae

+0

不客气! – TheUknown

+0

@Chaymae如果问题解决了,请标记答案 – TheUknown

0

您在onclick="insetSmiley('happy');"中有一个错字,应该是onclick="insertSmiley('happy');"。我检查了它,它适用于我。

+0

我没有看到你发布的代码 – j08691

+0

谢谢我纠正它。但它仍然不适用于我:( – Chaymae

+0

我认为他的意思是我忘记了我的insertSmiley在第三行的“r” – Chaymae

0

在您的JS代码,使用方法:

window.location = "second_HTML_Page.html" ; 
+0

我试过了,但它不起作用:( – Chaymae

+0

让我直说,你是说例如这个框架没有引用html页面: