【问题标题】:return undefined on div在 div 上返回未定义
【发布时间】:2015-01-10 18:19:00
【问题描述】:

在这里,我尝试使用 ajax 加载表单并在单击“添加项目”按钮时设置为“maindiv”。但返回未定义。还存在一个名为“AddItem”的 servlet..

 html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>JSP Page</title>
</head>
<body>
     <input type="button" onclick="loadAddItemForm()" value="Add Item"/>
    <div id="maindiv"> </div>

<script>
    function loadAddItemForm() {
        var x;
        if (window.XMLHttpRequest) {
            x = new XMLHttpRequest();
        }
        x.onreadystatechange = function () {
            if (x.readyState == 4 && x.status == 200) {
                //
                var txt = "ItemCode:" + "<input type='text' id='itemcodetxt'><br>" + "ItemName:" + "<input type='text' id='itemnametxt'><br>" + "Description:" + "<input type='text' id='descriptiontxt'><br>" + "QtyOnHand:" + "<input type='text' id='qtyonhandtxt'><br>" + "Reorderlevel:" + "<input type='text' id='reorderleveltxt'><br>" + "Unit price:" + "<input type='text' id='unitpricetxt'><br><input type='button' value='Add' onclick='addItem()'/>";
            }
            document.getElementById("maindiv").innerHTML = txt;

        };
        x.open("GET", "AddItem", true);
        x.send();

    }

</script> 
</body>

【问题讨论】:

  • document.getElementById("maindiv").innerHTML = txt;放在var txt = "ItemCode:" ...之后的if条件中
  • 查看浏览器的开发者工具。查看 JavaScript 控制台。它是否报告任何错误?查看“网络”选项卡。是否正在提出请求?它得到回应了吗?它们是否包含您期望的数据?

标签: html ajax jsp xmlhttprequest


【解决方案1】:

你没有传入页面,试试

 x.open("GET", "AddItem.html", true);

假设这是您要打开的页面。

它返回 false 是因为它正在寻找 AddItem,并且当它返回 false 时,txt 未定义为 if 块未执行

【讨论】:

  • 为什么必须在 servlet 的 URL 中输入 .html
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-09-29
  • 2019-11-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-12
相关资源
最近更新 更多