我正在尝试使用javascript Document.Write函数输出一行,但是,在提交表单时,该行只是闪烁并消失
有什么想法吗?
<!DOCTYPE html>
<html>
<head>
<title>Form Validation</title>
</head>
<body>
<script type="text/javascript">
function checkAge() {
var x = document.forms['myForm']['age'].value;
if(x < 18) {
document.write("<p>You are too Young. Form NOT submitted</p>");
} else {
document.write("Form sent successfully");
}
}
function tips() {
alert("Please enter your Name in the name Box, \nand Your age in the Age box.\nYou have to be Over 18 to submit the form");
}
</script>
<form id="myForm" action="formvalidation.html" onsubmit="checkAge();">
Name: <input type="text" name="text" id="name">
Age: <input type="text" name="age" id="age">
<input type="submit" value="Submit">
<input type="button" value="Help" id="hBtn" onclick="tips();">
</form>
</body>
</html>
答案 0 :(得分:2)
您无法使用document.write()
在当前页面上打印。
调用document.write()
会自动调用document.open()
来清除当前文档,从而清除您当前的内容。
或者您可以使用html <div id="result"></div>
并更改此值,
document.getElementById("result").innerHTML = "Some Text";
答案 1 :(得分:0)
在处理程序上返回false以不在提交时刷新页面:
<form id="myForm" action="formvalidation.html" onsubmit="checkAge();return false;">