2017-02-13 87 views
1

我正在編寫一個程序,它將在JavaScript和PHP頁面上生成隨機數並將它們顯示在JavaScript/Html頁面上。通過AJAX將PHP變量發送到JavaScript

到目前爲止,我的頁面都成功生成了數字,但我不知道如何從JavaScript頁面到外部PHP頁面來檢索數字並將其存儲到JS變量中。

這是我到目前爲止。

的JavaScript:

function roll() 
    { 
     var rollOne; //= Math.floor((Math.random() * 6) + 1); 
     var rollTwo; 
     var request = new XMLHttpRequest(); 

     request.open("GET", "filename.php", true); 
     request.send();     
    } 

我知道JS隨機被註釋掉了,那現在這並不重要。

PHP:

<?php 
    sleep(5); 
    $random =(rand(1,6)); 
    echo $random; 
?> 

因此,我怎麼拿$隨機從PHP文件,發送到JavaScript的網頁,並將其存儲到一個變量以後訪問?

我確定在本網站上有過類似的問題已經有數千次被問過了,但是從我搜索的內容來看,我還沒有找到任何對我有意義的東西。

+1

請學習一些ajax教程...他們很容易找到所有的網絡 – charlietfl

+0

可能重複的[從javascript調用php函數](http://stackoverflow.com/questions/7165395/call-php-function- from-javascript) –

回答

2

Mozilla docs on AJAX解釋得很好。調用.open.send之前,建立一個功能XMLHttpRequest當響應從服務器恢復運行:

request.onreadystatechange = function() { 
    if (request.readyState === XMLHttpRequest.DONE) { 
    // The request is complete 
    if (request.status === 200) { 
     // Server responded with HTTP status code 200 (OK) 
     // Here's your server's random value 
     random = request.responseText; 
    } else { 
     alert('There was a problem with the request.'); 
    } 
    } 
} 
+0

太棒了!很有幫助! –

0

您可以訪問返回的數據的responseText的值。換句話說,您使用responseText可以在JavaScript中訪問您從PHP回顯的數據並將其存儲在變量中。