初期画面 (JavaScript) クライアント側でフォームを検証し、テキスト ボックスにテキストが入力されていない場合は警告ボックスを表示しようとしています。アラート送信ボックスで [OK] をクリックすると、Web ページは最初の画面に戻ります。
テキストが入力された場合、JavaScript は PHP ファイルにリダイレクトする必要があります。
これまでのところ、私はこのコードを思いつきました:
<HTML>
<HEAD>
<TITLE>Discography Search</TITLE>
<script language="javascript" type="text/javascript" >
function validate(){
var username=document.getElementById('name').value;
if(username.length==0)
{
alert("Enter something in Searchbox");
}
}
</script>
</head>
<BODY>
<H1><center>Search</center></H1>
<FORM ACTION="phpfile.php" METHOD=POST id="submit1">
Search: <INPUT NAME=name id="name"><BR>
Type: <SELECT NAME="dropdown">
<OPTION value="A" ID="A">ARTIST</OPTION>
<OPTION value="A" ID="B">B</OPTION>
<OPTION value="C" ID="C">C</OPTION>
</SELECT>
<br><br><br>
<INPUT TYPE=submit name="submit" onclick="validate()">
<INPUT TYPE=reset>
</FORM>
および phpfile.php :
<html>
<head><title><center> Search Result</center></title></head>
<body>
<?php
//echo $_POST["name"];
//echo $_POST["dropdown"];
$name=$_POST["name"];
$dropdown=$_POST["dropdown"];
if(empty($name)){
alert("Please enter the something in the searchbox");
}
else{
$url="http://www.allmusic.com/search/".$dropdown."/".$name."/";
echo $url;
//echo '
}
?>
</body>
</html>
ただし、null 値がチェックされる部分、アラート ボックスは表示されますが、phpfile が実行され、次のエラーが表示されます。
致命的なエラー: 12 行目の phpfile.php の未定義関数 alert() の呼び出し
- アラート ボックスで [OK] をクリックしたときに、同じ js ページにとどまるにはどうすればよいですか?
- js ファイルに alert() を含めることができないのはなぜですか??
ありがとう!