2017-02-09 81 views
0

我的代碼有些麻煩。我的頁面中有一個Javascript函數和一個填充隱藏字段的PHP函數。當我從Javascript讀取隱藏字段時,讀取的值不是當前值。似乎沒有刷新。 我需要幫助。每一個提示真的很感激! 謝謝!從php獲取隱藏字段值後的功能

這裏是我的Javascript代碼:

var username = document.getElementById('user').value; 
checkUserName(username); 

var opennextpage = document.getElementById('hidden_field_openpage').value; 

if (opennextpage == 'YES'){ 
// open next page 
} 
else{ 
alert('Can't open page'); 
} 

我通過AJAX調用PHP頁面是這樣的:

function checkUserName(username){ 
    var strURL = "js/ax_checkusername.php?user="+ username; 
    var req = getXMLHTTP(); 

    if (req) 
    { 
     req.onreadystatechange = function() 
     { 
      if (req.readyState == 4) 
      { 
       // only if "OK" 
       if (req.status == 200) 
       { 
        document.getElementById('hidden_field_openpage').value = req.responseText; 
       } 
       else 
       { 
        alert("There was a problem while using XMLHTTP:\n" + req.statusText); 
       } 
      } 
     } 
    } 
    req.open("GET", strURL, true); 
    req.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT"); 
    req.send(null); 
} 
+0

因此,您運行您的ajax調用,然後嘗試運行您的JavaScript代碼以獲取更改的值?那是你正在嘗試做什麼?我看不出這些代碼是如何連接的,並且不清楚你的目標是什麼。 – Palo

+0

是的。我的目標是打開或不打開其他頁面讀取隱藏字段中的值。我使用Ajax來填充隱藏字段,因爲我需要在繼續之前檢查數據庫。函數checkUserName(username)將hidden_​​field_openpage字段置於YES或NO。然後我用Javascript讀取它,但變量opennextpage沒有正確的值。 – alevee

回答

0

你爲什麼不結合兩種,像這樣:

function checkUserName(username){ 
    var strURL = "js/ax_checkusername.php?user="+ username; 
    var req = getXMLHTTP(); 

    if (req) 
    { 
     req.onreadystatechange = function() 
     { 
      if (req.readyState == 4) 
      { 
       // only if "OK" 
       if (req.status == 200) 
       { 
        if (req.responseText == 'YES'){ 
// open next page here itself 
} 
else{ 
alert('Can\'t open page'); 
}; 
       } 
       else 
       { 
        alert("There was a problem while using XMLHTTP:\n" + req.statusText); 
       } 
      } 
     } 
    } 
    req.open("GET", strURL, true); 
    req.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT"); 
    req.send(null); 
} 

然後只需調用checkUserName(username)?

+0

使用此代碼!謝謝! – alevee

+0

我真的很感謝把我的帖子標記爲您的問題的答案! –