簡體   English   中英

使用 AJAX 響應填充 JSP 中的下拉列表

[英]Populating dropdown list in JSP using AJAX response

下面是我實現的代碼,用於通過 JSP 中的 Ajax 獲取下拉列表項:

if (xmlHttp.readyState == 4 || xmlHttp.readyState == "complete") {
    var data = xmlHttp.responseText.split("~");
    alert(data);

    var listb = document.getElementById("listbox");
    var textValue;
    var optionItem;

    for ( var count = 0; count < data.length; count++) {
        textValue = (data[count]);
        optionItem = new Option(textValue, textValue, false, false);
        listb.options[listb.length] = optionItem;
    }
}

但我收到了更多關於第一項的文字:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

但我沒有從它來的地方得到。 它來自哪里,我該如何解決?

您似乎正在使用 JSP 而不是 Servlet 來返回 ajax 響應。 也許您只是自己將該文檔類型放在 JSP 之上,或者您正在使用的某個框架將其隱式添加到 JSP 響應中。

您不應該將 JSP 用於 Ajax 響應。 請改用servlet 創建一個將所需數據寫入響應的 servlet,並讓 Ajax 改為調用該 servlet 的 URL。 還可以考慮使用 JSON 作為響應主體,而不是使用~作為分隔符的字符串。 JSON 在 JavaScript 中不易出錯並且更容易解析。

也可以看看:

暫無
暫無

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

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