我们能否将表单元素的值传递给同一个网页中的函数?
Can we pass form element values to a function in the same web page?
<html>
<body>
<form action="">
......any form elements......
</form>
</body>
<script>
function fn() {
}
</script>
</html>
而不是在动作属性的URL,是否有一种方法(或任何其他替代方法),以传递表单的值函数(在脚本标签)在同一网页?
这是我多年来的做法。它适用于所有浏览器——对于非常旧的浏览器,您甚至可以将document. getelementbyid ("form1")更改为document。Form1,如果你添加name=" Form1 "到表单标签。
注意:在jQuery出现之前,很多地方都推荐使用eventlistener,比如document.getElementById("form1").addEventListener("submit",
function(e) {
e.preventDefault();
... some code
});
但我个人更喜欢jQuery或更简单的onsubmit…
<html>
<head>
<script>
window.onload=function() {
document.getElementById("form1").onsubmit=function() {
var val1 = this.field1.value;
if (val1=="") {
alert('Field1 cannot be empty');
this.field1.focus();
return false;
}
// return true to submit, return false to stay on the page.
return true;
}
}
</script>
</head>
<body>
<form id="form1" action="">
<input type="text" name="field1" value="" />
.
.
.
</form>
</body>
</html>
如果必须是内联的,那么我强烈推荐
<head>
<script>
function validate(theForm) {
var val1 = theForm.field1.value;
.
.
return false;// cancel
.
.
return true; // allow submit
}
</script>
</head>
<form onsubmit="return validate(this)">
to just change some span or div on the page do this:
<html>
<head>
<script>
window.onload=function() {
document.getElementById("form1").onsubmit=function() {
var val1 = this.field1.value;
document.getElementById("div1").innerHTML="This is the value "+val1;
return false; // do not submit/refresh the page
}
}
</script>
</head>
<body>
<form id="form1" action="">
<input type="text" name="field1" value="" />
<input type="submit" />
</form>
<div id="div1"></div>
</body>
</html>
html
<form id="frm">
<input type="button" onclick="fn()" value="Submit to function"/>
</form>
javascript function fn(){
var frm = document.getElementById("frm");
var elements = frm.elements;
var len = elements.length;
// do something with elements
for(var i =0; i < len; i++){
console.log("%s = %s", elements[i].name, elements[i].value);
}
}
相关文章:
- 如何防止网页加载后自动启动功能
- 在同一个服务工作者中处理service-worker.js有任何影响吗
- 如何使用Node.js最有效地解析网页
- 为什么 .focus() 不起作用,而 .css(“color”,“red”) 在同一个选择器上起作用
- 刷新后保留对网页的更改
- AJAX不会在文件上传后重定向到网页-POST方法
- 使用谷歌网站翻译器自动翻译网页
- 如何在内联依赖项并将图像转换为dataURI的情况下完全提取网页
- 仅重新加载网页的一部分
- 每次提交表单时都会重新加载网页
- 打开网页后立即获取网页的活动javascript函数
- 链接两个网页或网络应用程序的最佳方式
- Android键盘不适用于包含Javascript的网页
- 在同一个javascript事件处理程序中调用不同的函数
- 网页上失败的javascript会导致所有其他脚本失败
- 通过javascript在同一个打开的选项卡中重新加载新的网页内容
- 如何在同一个网页上创建两个连接列表
- 多个谷歌图表api,在同一个网页上
- 如何制作我的网页,如果有人关闭了它,那么下次打开时应该从同一个页面开始
- 我们能否将表单元素的值传递给同一个网页中的函数?