ASP.net后台接收Ajax传出的变量,苦试了六小时不成功,只有请大侠出手了!!
不知道问题出在哪里,一运行就说:
“/mapApp”应用程序中的服务器错误。
--------------------------------------------------------------------------------
未将对象引用设置到对象的实例。
在网上查找加试验六个小时都没能解决,腰都受不了了,如果这么简单的问题都没解,那我也没法用Ajax了!!请高手相救!!
前台:javascript
<script language="javascript">
var map;
var Pointname;
var longitude;
var latitude;
function createXMLHttpRequest()
{
if(window.ActiveXObject){
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest)
{
xmlHttp = new XMLHttpRequest();
}
}
function createQueryString(){
var queryString = "WebFrom1?markname="+escape(Pointname)+"&longitude="+escape(longitude)+"&latitude="+escape(latitude);
queryString = queryString+"×tamp="+ new Date().getTime();
return queryString;
}
function handleStateChange(){
if(xmlHttp.readyState ==4){
if(xmlHttp.status == 200){
alert("成功了");
}
}
}
function sendMark()
{
createXMLHttpRequest();
var queryString = createQueryString();
xmlHttp.open("GET",queryString,true);
xmlHttp.send(null);
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;");
}
</script>
后台:WebFrom1.aspx.cs
if(!IsPostBack)
{
markname = Request.Params["markname"].ToString();//这个方法不行
longitude = Request.Params["longitude"].ToString();
latitude = Request.Params["latitude"].ToString();
//markname = Request.QueryString["markname"].ToString();//这个也不行
//longitude = Request.QueryString["longitude"].ToString();
//latitude = Request.QueryString["latitude"].ToString();
//markname = Request.Form["markname"].ToString();//这个还不行
//longitude = Request.Form["longitude"].ToString();
//latitude = Request.Form["latitude"].ToString();
Label1.Text = markname;
Label2.Text = longitude;
Label3.Text = latitude;
Response.End();
}
运行结果:
“/mapApp”应用程序中的服务器错误。
--------------------------------------------------------------------------------
未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。
源错误:
行 40: //longitude = Request.Params["longitude"].ToString();
行 41: //latitude = Request.Params["latitude"].ToString();
行 42: markname = Request.QueryString["markname"].ToString();
行 43: longitude = Request.QueryString["longitude"].ToString();
行 44: latitude = Request.QueryString["latitude"].ToString();
源文件: f:\aspxproj\mapapp\mapapp\webform1.aspx.cs 行: 42
有效地解决给40分