一起使用javascript和php

Emm*_*myS 1 javascript php

我有一个PHP表单需要一些非常简单的提交验证.我宁愿做验证客户端,因为有很多服务器端验证恰好处理将表单值写入数据库.所以我只想调用一个javascript函数onsubmit来比较两个密码字段中的值.这就是我所拥有的:

function validate(form){
  var password = form.password.value;
  var password2 = form.password2.value;
  alert("password:"+password+" password2:" + password2);

  if (password != password2) {
    alert("not equal");
    document.getElementByID("passwordError").style.display="inline";
    return false;
  }
  alert("equal");
  return true;
}
Run Code Online (Sandbox Code Playgroud)

如果两个密码不匹配,则会显示包含错误消息的默认隐藏div.警报只是显示密码和密码2的值,然后再次显示它们是否匹配(不会在生产代码中使用).

我正在使用input type = submit按钮,并在表单标记中调用该函数:

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" onsubmit="return validate(this);">
Run Code Online (Sandbox Code Playgroud)

输入不匹配的值时,所有内容都会按预期发出警报.我希望(并假设,基于过去的使用)如果函数返回false,则不会发生实际提交.然而,确实如此.我在密码字段中输入不匹配的值测试,以及警报清楚地表明我的价值观和不相等的结果,但实际行动的形式仍然发生,它的尝试写入我的数据库.

我是PHP的新手; 有什么关于它不会让我这样与javascript结合?如果返回true,使用input type =按钮并在函数本身中包含submit()会更好吗?

edw*_*win 5

如果发生JavaScript错误,则不会返回false,并且无论如何都会提交表单.

你的javascript中有一个错误:getElementByID应该是getElementById.