2016-05-14 19 views
0

我在javascript中有一個字符串數組。但是當我使用href ='mypage.php?id = var'時,我失去了這個數組。我需要保留它在$ _GET中使用它。這是代碼:Javascript var在更新頁面時發生變化

<script> 

var element_selected=[]; 
var i = 0; 

function hrefPage() 
{ 
    var pagina = "index.php?id=renew"; 
    location.href = pagina; 
} 

function loadArray(value) 
{ 
    element_selected[i] = value; 
    i++; 
} 

</script> 

<?php 

if(isset($_GET['id'])) 
{ 
    if ($_GET['id'] == "renew") 
    { 
     $selected_elements = array(); 
     $j = 0; 
     for($j = 0; $j < "<script> document.write(i) </script>"; $j++) 
     { 
      $selected_elements[j] = "<script> document.write(elements_selected[j]) </script>"; 
      echo $selected_elements[j]; 
     } 
    } 
} 

?> 
+1

PHP首先在服務器上執行。 Aftwerwards JS在你的瀏覽器中執行。因此,您不能像在for循環中那樣在您的PHP代碼中使用JS –

+2

您不能像這樣在PHP中編寫JavaScript,它不會被解釋。到PHP這些只是字符串。你也應該避免使用'document.write'。 –

+0

你在哪裏打電話給hrefpage()方法 – Aparna

回答

0

您需要使用本地存儲來使用保留跨頁面的JavaScript變量的值重新加載

 var varName = "sachin"; 
     localStorage.setItem("varName", VarName); 

     alert(localStorage.getItem("varName")); 

又如如何存儲陣列中的localStorage

var arrayName= []; 
arrayName[0] = prompt("Enter your value"); 
localStorage.setItem("arrayName", JSON.stringify(arrayName)); 

//... 
var storedValues = JSON.parse(localStorage.getItem("arrayName")); 

我在這裏添加了一個簡單的例子,在這裏如何在本地存儲中設置javascript值以及如何訪問它

我已經提供它作爲一個信息,爲您保留頁面重新加載 價值,但關於HTTP的第一件事是它是一個無狀態的協議。每個請求從服務器提取數據並呈現它在瀏覽器中的值在這裏設置本地存儲瀏覽器。所以,如果你想重新加載頁面重新加載後一定的參考價值腳本,你需要設置一些標誌,並在頁面加載檢查標誌,如果在需要的情況下標誌條件出現得從別的localStorage的數據正常進行

Check out this tutorial for more information

相關問題