したがって、いくつかのファイルがあります。
-- model -- step1.php
-- step2.php
-- view -- main.php
-- step1.php
-- step2.php
-- controller -- step1.php
-- step2.php
基本的に私がやろうとしているのは、main.php から step1 ビューを呼び出すことです。
$(document).ready(function(){
$("#MyForm").validate({
submitHandler: function(form) {
$.post('../controller/step1.php', $("#MyForm").serialize(), function(data) {
$('#step1_controller').html(data);
});
}
});
});
これは機能しますが、main.php でフォームを送信すると、step1 コントローラーが実行され、step2 ビューが読み込まれます。
問題は、この ajax リクエストを介して step2 ビューをロードすると、step2 ビューが step2 コントローラーをロードできなくなることです。ただし、ブラウザーで step2 ビューを開くと、すべて正常に動作し、step2 コントローラーが読み込まれます。
main.php -> step2.php を読み込みます -> step2 コントローラを読み込みます
- main.php は正常に step2 ビューをロードします
step2 ビューは正常に step2 コントローラーをロードします
しかし、main.php は step2 コントローラーをロードできません
これは少し混乱することはわかっていますが、誰かが私を助けてくれればとても感謝しています.
とにかく、これらの動的な ajax をロードしたインストール手順を使用するこれらすべてのページはどのように機能するのでしょうか?
ステップ 1 でフォームに記入し、[送信] をクリックすると、ステップ 2 が表示され、フォームに記入し、ステップ 3 が表示されます。最善の方法は何ですか?
step2 ビュー:
<script>
$(document).ready(function(){
$("#Foo").validate({
submitHandler: function(form) {
$.post('../controller/step2.php', $("#Foo").serialize(), function(data) {
$('#results_step2').html(data);
});
}
});
});
</script>
<h1 class="header_step2">Lorem</h1>
<p />
<form name="Foo" id="Foo" action="" method="POST" enctype="multipart/form-data">
<select size="1" name="Bar">
<option value="Foo">Bar</option>
<option value="Foo">Bar</option>
<option value="Foo">Bar</option>
<option value="Foo">Bar</option>
<option value="Foo">Bar</option>
</select>
<button type="submit">
<div id="results_step2"> Save </div>
</button>
</form>