在 JavaScript/AJAX 中传递带有附加到 URL 的查询字符串中的值的代码

Passing code with a value in a query string appended to the URL in JavaScript/AJAX

本文关键字:URL 代码 查询 字符串 AJAX JavaScript      更新时间:2023-09-26

我一直在查看不同的答案,这可能是我提出的相同问题,并且许多解决方案都使用了PHP或JQuery,我必须在JavaScript中执行此操作。这是我的问题(我是一个真正的菜鸟,所以我可能正在做一些非常愚蠢的事情,这就是它不起作用的原因)。

我正在尝试传递带有附加到 URL 的查询字符串中的值的"代码"。然后获取代码以动态写入页面。现在,我收到错误:"提交的代码不正确"。我认为我没有正确发送"代码"。

我也开始了一个jsfiddle:http://jsfiddle.net/shannongmac/6Z7NR/

这是我的代码:

function loadXMLDoc() {
            var xmlhttp;
            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 (xmlhttp.readyState==4 && xmlhttp.status==200) {
            document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
            }
        }
            xmlhttp.open("GET","http://florence.ccs.uconn.edu/~adepalma/cgi-bin/iskm3120/response.cgi",true);
            xmlhttp.send("yowza");
        function addText() {
        var newParagraph = document.createElement('p');
        newParagraph.textContent = textArea.value;
        document.getElementById("myDiv").insertBefore(newParagraph, H2);
    }
}

你的代码有几个问题:

  • 您正在尝试在执行 GET 请求时发送 POST 数据。 尝试将您的"yowsa"字符串作为 url 的一部分,而不是将其作为 POST 数据发送。 以下是差异的快速介绍:http://www.w3schools.com/tags/ref_httpmethods.asp
  • 您需要发送包含您的值的正确密钥。 您注释掉的代码显示您尝试了"name=yowza.xmp"。 看起来你需要"代码=yowza"。 (一些聪明的谷歌搜索 http://florence.ccs.uconn.edu/~adepalma/cgi-bin/iskm3120/response.cgi?code=yowza 是你需要提出的正确请求。 我不确定这是否算作弊,因为我还没有看过作业)。
  • 虽然您的请求可能在 dreamweaver 中有效,但您将在实际网络上遇到问题,因为您正在向不同的域发出请求。 查看跨源资源共享以了解更多信息:http://www.html5rocks.com/en/tutorials/cors/