Javascript 知道为什么表单提交为空时不显示警报吗?
大家好,我正在尝试进行表单检查,但我使用javascript所做的最基本的事情是不知道我做错了什么 html: 三叉戟Javascript 知道为什么表单提交为空时不显示警报吗?,javascript,Javascript,大家好,我正在尝试进行表单检查,但我使用javascript所做的最基本的事情是不知道我做错了什么 html: 三叉戟 提前感谢。还有很多其他事情: 在对象上下文之外使用“this”将引发错误 如果没有错误,您将丢失报税表 在JSFIDLE中,您没有引用事件手 琴弦 试试这个: ... <form onsubmit="return formCheck(this);" method="POST" action="check.php" > ... 小提琴有一些毛病: return
提前感谢。还有很多其他事情:
...
<form onsubmit="return formCheck(this);" method="POST" action="check.php" >
...
小提琴有一些毛病:
returnformcheck()周围没有引号代码>--尽管这里给出的代码中有它们
- JS代码被配置为在加载时执行,这使得全局上下文无法访问
(需要将设置更改为“no wrap”)formCheck
- 在事件处理程序
是中,此
对象,而不是表单。窗口已经有一个窗口
属性,该属性与您尝试执行的操作冲突。而不是以这种方式工作,考虑用DOM搜索方法来保存元素,如<代码> GETelEnMyBID,<代码> QueRealStudioOrth> <代码> >名称
。
function formCheck() {
var el = document.querySelectorAll("input[name=name]")[0];
if(el.value == ""){
alert("Je bent vergeten je naam in te vullen");
el.focus();
return false;
}
}
小提琴:
(只需再次点击run,以另一种方式进行尝试。POST与JSFIDLE中的正常方式不同。)只需将this关键字传递给formCheck函数即可。
html:
我查过了。除非您已禁用浏览器的javascript功能,否则它将正常工作。
...
<form onsubmit="return formCheck(this);" method="POST" action="check.php" >
...
function formCheck(myForm) {
if(myForm.name.value == ""){
alert("You forgot to enter your name");
myForm.name.focus();
return false;
}
return true;
}
function formCheck() {
var el = document.querySelectorAll("input[name=name]")[0];
if(el.value == ""){
alert("Je bent vergeten je naam in te vullen");
el.focus();
return false;
}
}
<form onSubmit= "formCheck()" type="POST" action="#" >
<label for="name">Name:</label>
<input type="text" name="name" id="name_input" onBlur="formCheck()">
<input type="checkbox" id="valid_name" name="valid_name" disabled>
<button type="submit" value="Submit">Submit</button>
</form>
function formCheck() {
var val = document.getElementById('name_input').value;
if(val!='')
document.getElementById('valid_name').checked = true;
else
alert('Looks like you forgot your name!');
}
<form onsubmit= "return formCheck(this);" method="POST" action="check.php" >
name: <input type="text" name="name" onchange="valid_name.checked = true;">
<input type="checkbox" disabled="disabled" name="valid_name">
<input type="submit" value="Submit">
</form>
function formCheck(frm) {
if(frm.name.value == ""){
alert("You forgot to enter your name");
frm.name.focus();
return false;
}
}