簡體   English   中英

將動態變量設置為 ajax XMLHttpRequest,而不是從 onchange 事件中獲取值

[英]Set dynamic variable to an ajax XMLHttpRequest instead of getting value from onchange event

我遇到了一個需要修改的腳本,但我不知道如何修改,我需要在頁面加載時設置它讀取值並拋出來自數據庫的結果。

我將粘貼的代碼正在工作並且確實從選擇表單中從數據庫中獲取結果,現在我如何設置一個在頁面加載時加載的變量並從數據庫中獲取結果?

有 3 頁我依賴
1 個數據頁都很好
2 php頁面
3.html頁面。 這里有下面的腳本,我正在為 Peter Griffin 使用選擇選項,他的值我希望它是變量成員。

我說 onload 是因為在第 1 頁上,當用戶瀏覽網頁時,頁面會刷新,然后我發送新數據,我需要基於變量的數據庫結果。

  <script>

/** page one  where member is a value that is fetch from a layer
  var member = google_tag_manager["GTM-x"].dataLayer.get('ContractNumber');

控制台日志(成員); **/

  function showUser(str) {
  if (str == "") {
    document.getElementById("txtHint").innerHTML = "";
    return;
} else { 
    if (window.XMLHttpRequest) {
        // code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp = new XMLHttpRequest();
    } else {
        // code for IE6, IE5
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
            document.getElementById("txtHint").innerHTML = this.responseText;
            console.log(this.responseText);
        }
    };
    xmlhttp.open("GET","elsewhere.php?q="+str,true);
    console.log(str);
    xmlhttp.send();
}
}
</script>

 <body>


  <select name="users" onchange="showUser(this.value)">
<option value="">Select a person:</option>
<option value="variable member">Peter Griffin</option>
<option value="2">Lois Griffin</option>
<option value="3">Joseph Swanson</option>
<option value="4">Glenn Quagmire</option>
</select>

 <br>
 <div id="txtHint"><b>Person info will be listed here...</b></div>

 </body>

正如我在這段代碼工作之前所說的那樣,但我沒有使用 select 如何在頁面加載時告訴它讀取變量 X 並獲取結果,在這種情況下,“0000004445”是我需要的,變量將是動態的,所以“0000004445”可以變成任何東西。

您可以在應該檢索值的<option>元素處設置selected屬性,將load事件附加到window並在load處理程序中調用showUser()document.querySelector("select[name=users]").value作為論證

 function showUser(str) { console.log(str); } onload = function() { showUser(document.querySelector("select[name=users]").value) }
 <select name="users" onchange="showUser(this.value)"> <option value="">Select a person:</option> <option value="0000004445" selected>Peter Griffin</option> <option value="2">Lois Griffin</option> <option value="3">Joseph Swanson</option> <option value="4">Glenn Quagmire</option> </select>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM