1

初めてテストを行いました。私はこのコードを読んで、それから自分のものを作りました。問題は、フィールドが空のままであってもエラーが発生しないことです。

これが私のフィドルです。

助けてください。ありがとう。

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
{function validateForm()

var x=document.forms["myForm"]["name"].value;
if (x==null || x=="")
  {
  alert("Name must be filled out");
  return false;
  }

var y=document.forms["myForm"]["password"].value;
  {
if (y==null || y=="")
  alert("Password name must be filled out");
  return false;
  }
</script>
</head>

<body>

<form name="myForm" action="demo_form.asp" onsubmit="return validateForm()" method="post">
Name*: <input type="text" name="name"> <br>
Password*: <input type="password" name="password"><br>
Email: <input type="text" name="email"><br>
<input type="submit" value="Submit">
</form>
</body>

</html>

</p>

4

5 に答える 5

8

修正コード: jsfiddle

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function validateForm() {

var x=document.forms["myForm"]["name"].value;
if (x==null || x=="")
 {
  alert("Name must be filled out");
  return false;
 }

var y=document.forms["myForm"]["password"].value;
if (y==null || y=="") {
  alert("Password name must be filled out");
  return false;
}
}
</script>
</head>

<body>

<form name="myForm" action="demo_form.asp" onsubmit="return validateForm()" method="post">
Name*: <input type="text" name="name"> <br>
Password*: <input type="password" name="password"><br>
Email: <input type="text" name="email"><br>
<input type="submit" value="Submit">
</form>
</body>
<html>

ブレースを配置する場所に注意してください。さらに、ブラウザのコンソールを使用してエラーを特定し、修正すると便利です。

</p>

于 2012-06-01T20:29:43.623 に答える
4

中括弧は、関数 validateForm() の後、if の後、および関数の最後にある必要があります。全体として、この例ではブレースがねじ込まれています。

左中括弧と右中括弧が一致し、意味を成すようにコードをレイアウトします。

于 2012-06-01T20:27:05.800 に答える
4

いくつかのブレース{}を逃し、1 つが間違った場所にありました。

これがうまくいくことを願っています:

function validateForm() {
var x=document.forms["myForm"]["name"].value;

if (x==null || x=="")
  {
  alert("Name must be filled out");
  return false;
  }

var y=document.forms["myForm"]["password"].value;
  {
if (y==null || y=="")
  alert("Password name must be filled out");
  return false;
 }
}
于 2012-06-01T20:35:24.487 に答える