phpとajaxjqueryを使用して検証したフォームページを作成したいと思います。http://malsup.com/jquery/form/
フォームページ
からjqueryをダウンロードしました。
<html>
<head>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.form.js"></script>
<script type="text/javascript">
function checkAll(){
var errmsg = ""
document.getElementById("errmsg").style.display = "none";
if(document.getElementById("txtbox1").value == ""){
errmsg += "Type your title<br/>";
}
if(document.getElementById("file1").value == ""){
errmsg += "Upload your picture<br/>";
}
if(errmsg != ""){
document.getElementById("errmsg").style.display = "block";
document.getElementById("errmsg").innerHTML = errmsg;
return false;
}
}
$(document).ready(function() {
var options = {
target: '#div2', //Div tag where content info will be loaded in
url:'uploadfile.php', //The php file that handles the file that is uploaded
beforeSubmit: checkAll,
success: function() {
//Here code can be included that needs to be performed if Ajax request was successful
}
};
$('#Form1').submit(function() {
$('#Form1').ajaxSubmit(options);
return false;
});
});
</script>
</head>
<body>
<span id="errmsg"></span>
<div id="div2"></div>
<form name="Form1" id="Form1" method="post" action="next.php" enctype="multipart/form-data">
Title <input type="text" name="txtbox1" id="txtbox1" />
Picture <input type="file" name="file1" id="file1" /><br/>
<input type="submit" value="Submit" />
</form>
</body>
</html>
Uploadfile.php:
<?php
if (((@$_FILES["file1"]["type"] == "image/gif") || (@$_FILES["file1"]["type"] == "image/png")
|| (@$_FILES["file1"]["type"] == "image/jpeg")
|| (@$_FILES["file1"]["type"] == "image/pjpeg"))
&& (@$_FILES["file1"]["size"] < 30720))
{
}
else{
echo "Check your file";
}
?>
私の問題:
ファイルのアップロード(ファイルの種類とサイズのチェック)を含む各フォームコンポーネントの検証を作成したいのですが、フォームに入力すると、ユーザーはnext.phpにリダイレクトされます(フォームのアクションを参照)。
ファイルのアップロードを検証するためにajaxjqueryを使用しているため、アクションはuploadfile.phpに変更され、ユーザーがフォームに入力すると、ページはどこにも移動しません。
この問題を解決するのを手伝ってください。