2010-10-30 60 views
1

這個問題可能看起來完全愚蠢,但是說我有一個PHP頁面,其中一些表單處理在php的頂部和一個html表單下面,並提交到相同頁面和提交方法的操作。我如何通過ajax獲得結果,即。發送表單給自己,而不刷新頁面,如果這是有道理的?謝謝對同一頁面的Ajax請求

回答

2

這聽起來像你在問Ajax基礎知識,對嗎?我建議使用jQuery來處理Ajax部分。

把jQuery的在你的頁面,然後像做

$(document).ready(function(){ 
    $('#submit_button').click(function(){ 
    var something='value to send to PHP'; 
    $.post('name_of_page.php',{"a_var":something},function(data){ /* do something with the data you received back*/ },'json'); 
    }); 
    }); 

然後在你的PHP頁面,設置處理後或普通的HTML輸出。

<?php 
if($_POST['a_var']){ 
    $result=do_something($_POST['a_var']); 
    echo json_encode($result); 
    exit; 
    } 
//if there was no POST value, it continues to here 
<html> 
This is the rest of your page. 
You'd have the form and the above javascript and so on here. 
</html> 
+0

不錯,退出;行是一個很好的竅門,這樣整個頁面就不會成爲反饋數據。沒有退出;按下提交按鈕後,它會顯示相同的頁面內容兩次。 – user1906399 2014-09-22 18:44:26

1

在你的頁面中,檢查頁面是否有POST參數。如果有,處理它們並返回確認。如果沒有,則顯示錶單。

+0

嗯,也許我沒有解釋的權利,如果我有窗體和用戶按提交,那麼我想要的形式由PHP處理,而不刷新頁面。但我要說的是表單提交給自己(即同一頁) – benhowdle89 2010-10-30 21:26:17

+0

是的,只需做一個ajax請求,並提交表單的內容(輸入字段的.val())並返回false。 – 2010-10-30 21:39:38

+0

好吧,謝謝 – benhowdle89 2010-10-30 22:05:39