重置表单,重置字段值,重置焦点所有的onSubmit()
Reset Form, Reset Field Value, Reset Focus All onSubmit()
之前我找到了一个问题的解决方案,现在我制造了更多的问题,希望找到一个解决方案。
我有一个提交URL的表单:
<form name="urlField" onsubmit="return submitURLFieldForm();">
<input type="text" name="address" id="addressfield" />
</form>
该URL在新选项卡/窗口中打开。现在我想要重置字段,将"http://"添加回来,并将焦点放在最后,准备键入新的URL。我的JS下面的作品在所有浏览器除了Opera。由于页面在包括Opera在内的所有浏览器中都能正确加载(字段focus()
&value()
最初都设置在<body>
标签)我认为这一定是我的onSubmit函数下面的问题:
function submitURLFieldForm() {
var url = document.getElementById('addressfield').value;
if (!url.match(/^[a-zA-Z]+:'/'//)) {
url = 'http://' + url;
}
window.open(url);
document.urlField.address.reset();
document.urlField.address.focus();
document.urlField.address.value='http'://';
}
是否有另一种写法?这是草率吗?
<head>
<script type="text/javascript">
function submitURLFieldForm() {
var url = document.getElementById('addressfield').value;
if (!url.match(/^[a-zA-Z]+:'/'//)) {
url = 'http://' + url;
}
window.open(url);
document.getElementsByName('urlField')[0].reset();
resetForm();
return false;
}
window.onload = function() {
resetForm();
}
function resetForm() {
var address = document.getElementsByName('address')[0];
address.focus();
address.value = "http://";
}
</script>
</head>
<body>
<form name="urlField" onsubmit="return submitURLFieldForm();">
<input type="text" name="address" id="addressfield" />
</form>
</body>
编辑
检查opera控制台后,添加了一些更改。我希望它能像你想的那样起作用
相关文章:
- keyup事件处理程序更改焦点不适用于快速键入
- 单击时将焦点更改为元素
- 后焦点更改为IE 11中的地址栏,而不是转移到表单中的下一个控件
- 检查onsubmit doenst work jquery contactform上的函数
- 在IE9中的输入字段中输入焦点最近按钮
- 为什么onsubmit函数似乎没有执行
- Javascript游戏输入失去焦点
- ExtJS网格单元格编辑器,防止焦点松动问题
- 检查元素是如何获得焦点的
- angularjs移除焦点上的活动类并添加到下一个项目
- Don'不允许将焦点集中在自动完成的选择上
- 当点击另一件事时,将焦点设置为一件事
- 文本框焦点上的自动完成菜单
- 如何检测哪个窗口是焦点
- 可以't从Youtube IFrame更改焦点
- 在jAlert之后设置焦点
- 在文本区域的焦点上分割渐变
- 使用Redux和React添加焦点更改类
- iFrames并再次检测焦点
- 重置表单,重置字段值,重置焦点所有的onSubmit()