Rumah >pembangunan bahagian belakang >tutorial php >Mengapa $.load() Saya Tidak Menghantar Data Borang, dan Bagaimana Saya Boleh Menggunakan AJAX Sebaliknya?
Data Borang Tidak Diserahkan melalui $.load
Soalan:
Satu klik butang mencetuskan kod berikut, tetapi permintaan posnya gagal mencapai fail PHP yang dimaksudkan (MonsterRequest.php) apabila dilaksanakan melalui panggilan $.muat. Halaman dimuatkan semula, mengehadkan keupayaan untuk menyerahkan data tanpa memuat semula.
Jawapan:
Untuk memudahkan penyiaran data tanpa memuat semula halaman, adalah penting untuk memahami AJAX. AJAX memproses data dengan menghantarnya ke fail PHP luaran, yang bertindak balas dengan hasil.
Pelaksanaan:
Dalam fail pertama, lampirkan pengendali peristiwa perubahan pada elemen yang relevan untuk menangkap pilihan yang dipilih. Data kemudiannya dihantar melalui permintaan AJAX POST ke fail kedua. Jika berjaya, data yang dikembalikan dipaparkan dalam amaran.
Fail 1:
<script> $(document).ready(function() { $('#Sel').change(function() { var opt = $(this).val(); $.ajax({ type: "POST", url: "receiving_file.php", data: 'selected_opt=' + opt, success:function(data){ alert('This was sent back: ' + data); } }); }); }); </script>
Fail 2: receiving_file.php
$recd = $_POST['selected_opt']; echo 'You chose: ' . $recd;
Atas ialah kandungan terperinci Mengapa $.load() Saya Tidak Menghantar Data Borang, dan Bagaimana Saya Boleh Menggunakan AJAX Sebaliknya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!