javascript - 带文本框的 iframe
问题描述
我的代码有什么问题?只有第二个 iframe 有效,而第一个框无效。
任何形式的帮助将不胜感激。
<form action="" method="post" id="url-setter">
<input type="text" value='' name="url" id="url" />
<button type="submit" name="submit">Submit</button>
</form>
<iframe id="the-frame" width="540" height="480"></iframe>
<iframe id="the-frame1" width="540" height="480"></iframe>
<script type="text/javascript">
(function() {
"use strict";
var url_setter = document.getElementById('url-setter'),
url = document.getElementById('url'),
the_iframe = document.getElementById('the-frame');
url_setter.onsubmit = function(event) {
event.preventDefault();
the_iframe.src = url.value;
};
}());
(function() {
"use strict";
var url_setter = document.getElementById('url-setter'),
url = document.getElementById('url'),
the_iframe = document.getElementById('the-frame1');
url_setter.onsubmit = function(event) {
event.preventDefault();
the_iframe.src = url.value;
};
}());
</script>
解决方案
首先,不要分配onsubmit
两次,其次,您需要在触发url
时获取元素值onsubmit
,否则没有任何值。
堆栈片段
<form action="" method="post" id="url-setter">
<input type="text" value='' name="url" id="url" />
<button type="submit" name="submit">Submit</button>
</form>
<iframe id="the-frame" width="540" height="480"></iframe>
<iframe id="the-frame1" width="540" height="480"></iframe>
<script type="text/javascript">
(function() {
"use strict";
var url_setter = document.getElementById('url-setter'),
the_iframe = document.getElementById('the-frame'),
the_iframe1 = document.getElementById('the-frame1');
url_setter.onsubmit = function(event) {
event.preventDefault();
var url = document.getElementById('url');
the_iframe.src = url.value;
the_iframe1.src = url.value;
};
}());
</script>
推荐阅读
- css - 如何使加载图像以我的页面为中心?
- android - 无法揭穿 eglSwapBuffers 功能
- r - 仅当两列中的值颠倒且所有其他值相同时才删除数据框中的行
- netlogo - 如何在游戏板模拟中移动海龟?
- angular - 如何立即取消选中复选框?
- powershell - powershell get-eventlog 如果超过 5 次添加
- c# - 如何仅通过其 pid 重新启动进程?
- swift - Swift 中的 2 行重复代码是否首选单独的函数?
- java - 用 Java 生成的 RSA 公钥在 php 中无效
- mysql - Win 10 上的 MAMP 4.1.0 未启动 MySQL