我正在尝试进行Ajax调用但会导致页面加载 这是我的jquery代码
var ajaxUrl = "AjaxCallHandler.aspx";
function _init_Chart() {
$.ajax({
type: "GET", //GET or POST or PUT or DELETE verb
url: ajaxUrl, // Location of the service
data: "OpCode=GetCallAverageReportForGraph&Parms=DeptId^17~Month^10~Year^2012", //Data sent to server
contentType: "", // content type sent to server
dataType: "string", //Expected data format from server
processdata: true, //True or False
success: function (responseString) {//On Successful service call
alert(responseString);
}
});
return false;
}
这是我的AjaxCallHandler.aspx.cs c#code
protected void Page_Load(object sender, EventArgs e)
{
string responseMessage = "";
string status = "SUCCESS";
try
{
if (Request.QueryString["OpCode"] == null)
{
throw new Exception("Invalid Request, OpCode missing.");
}
string operationRequested = Request.QueryString["OpCode"];
string Params = Request.QueryString["Parms"];
switch (operationRequested)
{
case "GetCallAverageReportForGraph":
responseMessage = GetCallAverageReportForGraph(Params);
break;
case "GetCallAverageReportDetails":
responseMessage = GetCallAverageReportDetails(Params);
break;
}
}
catch (Exception exp)
{
status = "EXCEPTION";
responseMessage = exp.Message;
}
Response.ClearContent();
Response.ClearHeaders();
Response.Write(responseMessage);
}
我不知道为什么这个东西导致页面加载。我是jquery AJAX的新手,但是当我尝试使用javascript AJAX时,它工作正常,没有任何页面加载。
答案 0 :(得分:2)
我假设这是你的AjaxCallHandler.aspx背后的代码?
如果是这样,您的AJAX调用基本上只是加载该页面的结果,就像您使用浏览器窗口(即GET)命中它一样。
大多数情况下,当您想要执行AJAX请求时,您将针对返回JSONResult ActionResult或Web服务(.asmx)的MVC函数调用它。
由于您只是访问常规网页,因此它将始终在该网页的代码上执行Page_Load事件。