ある html ファイル (file1.html) が別の html ファイル (file2.html) をロードするコードを書きました。file2.html (フォーム ページ) には、いくつかの小さな php コード (session_start() を呼び出す)、いくつかのフォーム フィールド、および $.ajax() 関数を含むいくつかの jquery JavaScript 関数が含まれており、入力が入力されると、php ファイルが呼び出されます。file1.html が file2.html をロードすると、$.ajax() 関数を除いて、file2.html のすべての jquery JavaScript 関数が適切に実行されます。$.ajax 関数は、file2.html ($.ajax() を使用) をブラウザにロードすると正しく機能します。次に、以下のコードに示すように $.ajax 関数を file2.html から file1.html に移動して問題を解決しようとしましたが、成功しませんでした。
どこが間違っていますか?( http://api.jquery.com/load/で確認し、正しい方向に進むためにこのサイトを見ていましたが、同様の問題は見つかりませんでした。
助けてください。
コード file1.html (file2.html から $.ajax 関数を移動)
<script src="js/jquery-1.10.1.min.js"></script>
</head>
<body>
<script>
$(document).ready(function(){
$("#myForm").submit(function(){
$.ajax({
type: "POST",
url: "step2_submit2ajx.php",
data: $("#myForm").serialize(),
dataType: "json",
success: function(msg){
$("#formResponse").removeClass('error');
$("#formResponse").addClass(msg.statusgeneral);
$("#formResponse").html(msg.statusgeneral);
},
error: function(){
$("#formResponse").removeClass('success');
$("#formResponse").addClass('error');
$("#formResponse").html("There was an error submitting
the form. Please try again.");
}
});
//make sure the form doesn't post
return false;
}); //.ajax
});
</script>
<script>
$(document).ready(function(){
$("#section1").load("file2.html");
});
$('#page1').show();
$('#page2').hide();
</script>
<div id="page1">
page 1
<div id="section1">
</div>
<button onclick="toPage2();" type="button">< to Page 2</button>
</div>
<div id="page2" style="display:none;">
page 2
<div id="section2">
</div>
<button onclick="backPage1();" type="button">< Back to Page 1</button>
</div>
<script>
function toPage2() {
$('#page2').show();
$('#page1').hide();
}
function backPage1() {
$('#page2').hide();
$('#page1').show();
}
</script>
</body>
</html>