私はselectタグid = "departmentselect"のデータを取得して、フォームの値をmysqlデータベースに保存してからフォームを送信します。フォームを送信する前にAJAXを使用してデータを取得すると聞きました。 College選択タグとそれに対応する部門選択タグの値を選択すると、データベースの部門にのみ番号が格納されるためです。PHPに提出する前にAJAXを使用して選択タグからデータを取得するには?
、部門は、JSONファイルの値を取得できませんでした。番号のみが表示されます。
はここにここに私のPHPCode
<!DOCTYPE html>
<html>
<head>
<title>Sample</title>
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<body>
<form action="SignupProcess.php" method="POST" onsubmit="return check_password();" id="signupform">
<select id="collegeselect" name="collegeselect">
<option value="">College</option>
<option value="College of CAS">College of CAS</option>
</select>
<select id="departmentselect" name="departmentselect">
<option value="">Department</option>
</select>
</form>
</body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://code.jquery.com/jquery-2.1.1.min.js" type="text/javascript"></script>
<script src="GetCollegeJsonData.js"></script>
<script>
$('#signupform').submit(function(e))
{
if($('#departmentselect').val() != '')
{
$ajax
({
type: 'POST',
url: 'Signup.php?select' += select,
success: function(data)
{
alert(data);
}
});
}
else
{
alert('error');
}
e.preventDefault();
});
</script>
</html>
スクリプトタイプ でAJAXを使用するためのスクリプトですが、それは何の影響も与えていないようでした。
<script>
$('#signupform').submit(function(e))
{
if($('#departmentselect').val() != '')
{
$ajax
({
type: 'POST',
url: 'Signup.php?select' += select,
success: function(data)
{
alert(data);
}
});
}
else
{
alert('error');
}
e.preventDefault();
});
</script>
jQueryのコードファイル名GetCollegeJsonData.js
は、私は、ファイルからJSONデータを取得し、私のjQueryのファイルにそれを読んで、その後、私のPHPコードにスクリプトを使用してファイルをリンク
//Get json
$('body').on('change', '#collegeselect', function() {
var selected_college = $(this).val();
$('#departmentselect').html('');
$.getJSON("CollegeAndDepartment.json", function(data) {
$.each(data[selected_college], function(key, val) {
$('#departmentselect').append("<option value='" + key + "'>" + val + "</option>");
});
});
})
そのJSONファイル
{
"College of CAS": ["Biology", "English", "LIACOM", "Library & Information Science", "Mass Communication", "Philosophy", "Political Science", "Psychology"]
}
私のAjax機能は間違っていますか?
ドット( '.')がありません。 '$ ajax'ではなく' $ .ajax'でなければなりません。 – Shiyou
それでも部署に番号0が表示されています。私のajax機能は間違っていると思います。 –
ここにはいくつかの構文エラーがあるようですが、実際のエラーではないかもしれませんが、他の人があなたの問題を正しく識別できない可能性があります。例えば、Shiyouはあなたの質問が '$ ajax'を使うとき' $ .ajax'と言った。私は 'url: 'Signup.php?select' + = select'を見ています..ここで何が起こっていますか? 'select'変数とは何ですか? –