使用AJAX&发送邮件请求ASP.Net时出错JavaScript(不是jQuery)

时间:2015-06-10 21:11:19

标签: javascript html asp.net ajax

我在使用AJAX和JavaScript发送Post请求ASP.Net时遇到问题。我的意图是将多个值发送到数据库并插入它们。我有一个html页面,其中包含使用AJAX调用ASP请求的以下函数。

.html文件:

// Builds AJAX request and sends it to ASP page
function sendInfo(x,y,z){
    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=stateChanged; 
    xmlhttp.open("POST","Update.asp",true);
    xmlhttp.send("addy="+encodeURIComponent(x)+
                  "&lat="+encodeURIComponent(y)+
                  "&lng="+encodeURIComponent(z));
}

// Checks the ready state of the sent response
function stateChanged() {
    if (xmlhttp.readyState==4 && xmlhttp.status==200) {
        document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
    else {
        document.getElementById("txtHint").innerHTML="Error with ready state: " + xmlhttp.readyState + " and status: " + xmlhttp.status;
    }
}

这是我的.asp文件:

<% 
    conn = Server.CreateObject("ADODB.Connection"); 
    conn.Open("DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" +  Server.MapPath("Project.mdb"));

    var addy=Request.Form("addy");
    var lat=Request.Form("lat");
    var lng=Request.Form("lng");

    var sql="INSERT INTO Location_Info (Address,Latitude,Longitude)"
    sql= sql + " VALUES "
    sql= sql + "('" + addy + "',"
    sql= sql + "'" + lat + "',"
    sql= sql + "'" + lng + "')"

    rs = conn.Execute(sql);
    Response.Write("Your record has been placed into the database.");

    rs.Close();
    conn.Close();
%>

每当我运行我的页面并输入要发送的正确信息时,它只返回&#34;出现就绪状态的错误的情况:4和状态:500&#34;。这种状态500是一般错误,我不确定如何调试我的程序,因为我甚至尝试评论.asp文件中的所有内容,只有##; Response.Write(&#34; text&#34; );&#39;代码,但无济于事,仍处于状态:500错误。

如果有人可以帮我解决我做错的事情,我们将不胜感激。

0 个答案:

没有答案