Ajax请求出现404错误

5
我需要从一个执行数据库选择操作的JSP页面中获取一些数据,并将其放置在一个div中。我需要使用Ajax完成这个任务。
以下是我的代码:
$(function() {
    teste();
});

function teste() {
    var v1 = document.getElementById("selCodigo").value;
    alert(v1);

    $.ajax({       
       type : "GET",
       data : "turma="+v1,
       url : "busca-notas.jsp",       
       success : function(resposta){
           alert("DEU CERTO");
       },
       error : function(xhr, ajaxOptions, thrownError){
           alert(xhr.status);
           alert(thrownError);
           document.getElementById("notas").innerHTML = "ERRO";
       }
    });
}

我测试了变量v1和它所接收的值,而在我的JSP页面中,我这样做:

String turmaSelecionada = request.getParameter("turma");

问题在于Ajax内容没有输入到所需的div中,超出了xhr.status呈现的thrownError和404错误未找到的范围。有人能帮我吗?

2
如果你遇到了404错误,那么错误可能出现在这里:url : "busca-notas.jsp" - Kevin B
是的,但是这个页面在同一个目录中。 - Daniel Swater
2个回答

9

可能是因为busca-notas.jsp不存在,或者它在与调用Ajax请求的HTML不同的服务器上或路径下。

例如:如果你的HTML和JavaScript在这里:

http://www.example.com/somepath/page.html

你的PHP代码在这里:

http://www.example.com/otherpath/busca-notas.jsp

如果你想使用url: "../otherpath/busca-notas.jps",那么你需要这样做。有一个简单的方法来检查:在浏览器中打开你的HTML文件,删除路径的最后一部分,并将其替换为"busca-notas.jpg",看看你得到了什么。

404还意味着你的JSP代码从未执行。


是的,太棒了! 已经生效了。 非常感谢你。 这是世界上最好的论坛 :D - Daniel Swater

0

这是说您尝试进行GET的资源不存在。您进行GET的路径可能不正确。您能告诉我您的文件结构(javascript/service文件等)吗?我建议使用浏览器开发者工具或Fiddler来调试问题。

使用F12(Windows)与浏览器一起使用可以打开开发者工具。此外,Fiddler工具非常好用!http://www.fiddler2.com/fiddler2/

顺便说一句,如果您使用console.log进行调试,您将永远不会回到警报窗口:)


抱歉,我没有在相同的目录中找到 busca-notas.jsp 文件。路径可能不正确。 - Daniel Swater

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接