ASP.NET页面采用AJAX.NET技术来实现分页,上传到服务器之后发现“Presell未定义”错误

凯尔特猿人 2008-08-19 10:07:11
ASP.NET页面采用AJAX.NET技术来实现分页

程序经过本地测试运行正常,上传到服务器之后,在客户端访问发现“Presell未定义”的错误

Presell.aspx 代码如下(部分页面设计代码省略):
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Presell.aspx.cs" Inherits="AjaxPaginCls.Presell" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>xxx</title>
<script language="javascript" src="ajax/common.ashx"></script>
<script language="javascript" src="ajax/AjaxPaginCls.Presell,AjaxPaginCls.ashx"></script>
<script language="javascript">
var CurPage;
var CPage;
function Page_Load)
{
var PageSize=20;
var rInit=Presell.InitPaginObject(PageSize);
ShowErrorMsg(rInit);
CurPage=1;
var rPData=Presell.getPageDate(CurPage);
//alert(rPData.value[0][0]);
ShowPageData(rPData.value);
CPage=Presell.getPageCount();
ShowErrorMsg(CPage);
ShowPageNum();
}
function ShowErrorMsg(resp)
{
if(resp.error!=null)
{
alert(resp.error);
return false;
}
}
function ShowPageData(PData)
{

//this.ShowData.innerHTML="";
var InerHtml="<table width=100%>";
InerHtml += "<tr class=\"header\"><td width=80px>No.</td><td width=200px>字段一</td><td width=450px>字段二</td><td width=200px>字段三</td></tr>";
if(PData!=null)
{
for(var r=0;r<PData.length;r++)
{
InerHtml+="<tr>";
for(var c=0;c<PData[r].length;c++)
{
if(PData[r][c]!="")
{
if(c == 0)
InerHtml += "<td class=p>"+ (r + 1) +"</td>";
else if(c == 1)
InerHtml += "<td><a href=PreView.aspx?id=" + PData[r][0] + ">" + PData[r][c].substr(0, 20) + "</a></td>";
else if(c == 3)
{
var date = PData[r][c].toLocaleString();
var reg = /\d{4}-\d{1,2}-\d{1,2}/;
InerHtml += "<td>" + date.match(reg) + "</td>";
}
else
InerHtml+="<td>" + PData[r][c].substr(0, 30) + "</td>";
}
else
InerHtml+="<td> </td>";
}
InerHtml+="</tr>";
}
InerHtml+="</table>";
//alert(InerHtml);
this.ShowData.innerHTML=InerHtml;
}
}

function PrevPage()
{
if(CurPage>1)
{
CurPage--;
var rPData=Presell.getPageDate(CurPage);
//alert(rPData.value[0][0]);
ShowErrorMsg(rPData);
ShowPageData(rPData.value);
ShowPageNum();
}
}
function NextPage()
{
if(CurPage<CPage.value)
{
CurPage++;
var rPData=Presell.getPageDate(CurPage);
ShowErrorMsg(rPData);
ShowPageData(rPData.value);
ShowPageNum();
}
}

function PageGo()
{
var pageNo = parseInt(document.getElementById("txtPageNo").value);

if(pageNo < 1)
{
pageNo = 1;
document.getElementById("txtPageNo").value = pageNo;
}
if(pageNo > CPage.value)
{
pageNo = CPage.value;
document.getElementById("txtPageNo").value = pageNo;
}
CurPage = pageNo;
var rPData=Presell.getPageDate(CurPage);
ShowErrorMsg(rPData);
ShowPageData(rPData.value);
ShowPageNum();
}
function ShowPageNum()
{
this.PageCount.innerHTML="总页数"+CPage.value+"  当前页"+CurPage;
}
</script>
</head>
<body onload="Page_Load();">


<div class="listdata" id="ShowData"></div>
<div align="center">
<form id="Form1" method="post" runat="server">
<div id="PageCount"></div>
[<a href="#" onclick="PrevPage();" >上一页</a>]
[<a href="#" type="button" onclick="NextPage();">下一页</a>]
  
转到第<input type="text" id="txtPageNo" size="5" maxlength="3" value="" />页
<input type="button" value="GO" onclick="PageGo();" />
</form>
</div>
</body>
</html>

网上搜索解决方法试过都不行,搜索到的有以下几种可能出现的问题:
1.没有将类加载放在form1以内
2.忘记在服务器的web.config里面添加Handler了:
在<system.web>节点下加入:
<httpHandlers>
<add verb="POST,GET" path="ajax/*.ashx" type="Ajax.AjaxHandlerFactory, Ajax"/>
</httpHandlers>
3.javascript的执行方式为顺序执行的问题
4.IIS的配置——查看映射中是否已经添加了“.ashx”的扩展名类型
5.查看防火墙过滤软件是否把.ashx过滤掉

小弟不才,上面的5种方法都做过检查,但还是没有解决问题。
那位兄弟有遇到过这个问题,请指教指教!将万分感谢,如答案满意可加分!
...全文
76 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
凯尔特猿人 2008-08-26
  • 打赏
  • 举报
回复
问题已经解决,原来是服务器的AJAX运行环境没配好,我重新在服务器上安装AJAX.NET,然后在IIS中重新建立虚拟目录(因为之前安装.NETFRAMEWORK时将映射中的很多扩展名删了),最后在客户端刷新,OK了!
可能这个问题存在的原因很多,很少有人能总结完善,所以没什么人回答!
谢谢楼上的兄弟帮小弟顶了下!50分非你莫属!
还想懒够 2008-08-22
  • 打赏
  • 举报
回复
AjaxPaginCls组件或代码以及相关依赖组件有没有上传?

如果使用微软的AJAX,还得在服务器上安装AJAXExtension
凯尔特猿人 2008-08-19
  • 打赏
  • 举报
回复
没人顶自己顶!

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧