我可以在点击时创建唯一的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>
答案 0 :(得分:0)
据我所知,如果ifs不属于同一个域,则无法通过父页面js修改iframe中的控件。
如果这些是同一个域的一部分,您可以像这样输入您的输入元素:
window.frames['myIFrame'].document.getElementById('myIFrameElemId')
在您的示例中,myIframeElemId将为0,myIFrame将是我猜的帧。