如何在OnClick上创建iframe并更新其输入的名称以使其唯一?

时间:2017-02-07 16:37:19

标签: javascript jquery html iframe chat

我可以在点击时创建唯一的iframe,但我无法增加它的名称属性。目标是能够拥有唯一的输入,以便我可以设置一个iframe输入与另一个iframe聊天的能力。

index.html
<body>
    <p>+</p>
    <div></div>

scripts.js

$(function () {

    var id = 1;
    var name = 1;
    $('p').on('click', function() {

       var frame = $('<iframe />', {
            name: 'frame',
            id:   id,
            sandbox: 'allow-forms allow-top-navigation allow-scripts allow-modals allow-same-origin',
            src: 'iframe.html'
            });

       frame.find('input').attr('name', name); 
       $('div').append(frame);

        id++;  
        name++; 
    })
});

iframe.html


<input type="text" id="0" class="chatBoxes" value="type your message"></input>

1 个答案:

答案 0 :(得分:0)

据我所知,如果ifs不属于同一个域,则无法通过父页面js修改iframe中的控件。

如果这些是同一个域的一部分,您可以像这样输入您的输入元素:

window.frames['myIFrame'].document.getElementById('myIFrameElemId')
在您的示例中,

myIframeElemId将为0,myIFrame将是我猜的帧。