走过路过的各位大侠:帮帮忙:ajax的,send()方法报错,急。。。在线等

code:
aspx页面:
var xmlhttp;
function CreateXmlhttp() {
//在IE中创建xmlhttpRequest,适用于IE5.0以上所有版本
//根据不同的浏览器创建XMLHttpRequest
if(window.ActiveXObject)
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}

}

function CallPlanPagenoDetail()
{
var dic=<%=SearchResultGrid.ClientID %>.getSelectedRows();
if(dic&&dic.length>0)
{
var pageno = dic[0].item("plan_pageno");
alert(pageno);
CreateXmlhttp();
xmlhttp.open("POST","GoodsHandler.ashx",true);//设置请求方式,请求文件,异步请求
xmlhttp.onreadystatechange = function()
{
if(xmlhttp.readystate==4)
{
//判断是否执行成功
if(xmlhttp.status==200)
{
//更新页面上的某元素
var rep = document.getElementById('divReport');
if(rep)
report.innerHTML = xmlhttp.responseText;
}
}

}
xmlhttp.setRequestHeder("Content-Type", "application/x-www-form-urlencoded;");
xmlhttp.send("action=GetPlanInDetailByPlanPageno&planPageno="+pageno):
}
}
public string GetPlanInDetailByPlanPageno(string pageno)
{
Wz_in_planManager manager = new Wz_in_planManager();
DataTable dt = manager.GetWzInPlanByPlanPageno(pageno);
if (dt != null && dt.Rows.Count > 0)
{
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append("table>");
sb.Append("<tr><td>物资名称</td><td>请领数量</td><td>单位</td></tr>");
foreach (DataRow dr in dt.Rows)
{
sb.Append("<tr>");
sb.Append("<td>" + dr["material_name"] + "</td>");
sb.Append("<td>" + dr["in_amount"] + "</td>");
sb.Append("<td>" + dr["unit_name"] + "</td>");
sb.Append("</tr>");
}
sb.Append("</table>");
return sb.ToString();
}
return string.Empty;
}

先把这个<%=SearchResultGrid.ClientID %>用引号引起来,然后你的后台代码GetPlanInDetailByPlanPageno应该在public void ProcessRequest(HttpContext context)方法中被调用,如:
public void ProcessRequest(HttpContext context){
context.Response.Write(GetPlanInDetailByPlanPageno(context.Request["planPageno"]));
context.Response.End();
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-09-25
用get试一试
相似回答
大家正在搜