1

我正在尝试确保我的表单中的某些字段没有留空。它看起来很简单,但由于某种原因它不起作用。警报未显示,并且返回 false 不起作用(它继续将空白条目发布到我的数据库中)请帮助,我做错了什么。谢谢你!

剧本:

function check(){
var name = getElementById('name');
var date = getElementById('date');
var pri = getElementById('pri');
var asapc = getElementById('asapc');
var asapn = getElementById('asapn');
var obr = getElementById('obr');
var obc = getElementById('obc');
var obn = getElementById('obn');
  if (name.value == "" || date.value == "" || pri.value == "not" || asapc.value == "" ||  asapn.value == "" || obr.value == "" || obc.value == "" || obn.value == "") {
    alert( "One or more fields were not filled out." );
    return false ; }
    return true;
 }

编码:

<FORM ACTION="step2.php" METHOD="POST" onsubmit="check();">
<!-- fields here -->
<INPUT TYPE="submit" VALUE="CONTINUE">
4

3 回答 3

5

访问每个元素,document.getElementById...并在表单标签中写这个,onsubmit="return check();"而不是如果onsubmit="check();"

于 2012-08-17T16:52:31.463 回答
2

您在这里缺少回报:

<FORM ACTION="step2.php" METHOD="POST" onsubmit="return check();">
于 2012-08-17T16:49:49.630 回答
0

您缺少(文档)这是正确的语法:

document.getElementById('id');


<script>
function check() {
var name = document.getElementById('name');
var date = document.getElementById('date');
  if (name.value == "" || date.value == "") {
        alert( "One or more fields were not filled out.");
        return false; 
    }
}
</script>

getElementByID 表示 ID 不是我的 tagName

<FORM ACTION="step2.php" METHOD="POST" onsubmit="return check();">
  <input name="name" type="text" value="" id="name">
  <input name="date" type="text" value="" id="date">
   .....etc..
  <INPUT TYPE="submit" VALUE="CONTINUE">
</FORM>
于 2012-08-17T17:01:30.860 回答