2012-07-06 151 views
1

概述 - 你點擊一個按鈕(在一個javascript頁面上),它將發送一個請求到一個php頁面來拉起一個特定的數組,然後該數組應該被髮回javascript頁面。當該數組傳遞到JavaScript頁面時,我需要將它傳遞給一個函數以供使用。有誰知道該怎麼做。php array to javascript based on button click

什麼我目前在做下面是 -

<form action="GetTest.php" method="post"> 
    Something: <input id = "something" input type="submit" name="q" on/> 
</form> 

當我點擊提交,我重定向到具有陣列我需要(預計)我的PHP頁面,但我不知道從那裏開始做什麼。任何幫助將非常感謝。

+3

查找到AJAX與JSON,最有可能使用jQuery'$。阿賈克斯()'函數。 – 2012-07-06 16:10:10

+0

您正在尋找AJAX – 2012-07-06 16:10:12

回答

0

首先,處理HTML這樣,你是不是傳遞到PHP的形式在所有(停留在頁面上):

更改:

<form action="GetTest.php" method="post"> 
    Something: <input id = "something" input type="submit" name="q" on/> 
</form> 

要:

Something: <input id = "something" input type="submit" name="q" on/> 

然後,看看jQuery的AJAX功能:

$("#something").click(function() { 
    $.ajax({ 
     url: 'GetTest.php', 
     type: 'POST', 
     success: function(data){ 
     alert('success'); 
     }, 
     error: function(){ 
     alert('failure'); 
     } 
    }); 
}); 

您可以從GetTest.php中檢索POST數據,並直接通過Javascript傳輸它。

祝你好運!

+0

我想我錯過了一些東西,我只是在我的代碼中寫了這個。但是,當我點擊我的按鈕時,我仍然會被髮送到我的php頁面。我需要的那個按鈕是拉動php數組,同時仍然停留在JavaScript頁面上,任何想法都可以在這個 – user1472224 2012-07-06 16:23:01

+0

哎呀,我不知道,我得到了這個工作。謝謝!! – user1472224 2012-07-06 16:26:34

2

你有兩種方法可以幫助你:

  1. 使用GETPOST - 你的情況POST。在GetTest.php裏面使用$_POST變量來處理從表單接收到的數據。

    參考:$_POST documentation

  2. 使用AJAX功能。在這種情況下,您將使用XMLHTTPRequest$.ajax(如果您即將使用jQuery)。

    參考:Using jQuery and AJAX - NetTuts+,或AJAX Tutorial - W3Schools

+0

+1用於鏈接到學習資源,而不是提供代碼。肯定會建議使用jQuery實現來儘量減少跨瀏覽器問題 – hellsgate 2012-07-06 16:21:04

+0

@hellsgate感謝您的反饋! – 2012-07-06 16:23:21

+0

感謝您的幫助,絕對要去jquery路線! – user1472224 2012-07-06 16:34:43