网页在PC 上运行正常,在IPad上运行出错的故障原因分析及应对措施

网页在PC 上运行正常,在IPad上运行出错的故障原因分析及应对措施

最近在测试一个管理系统网站时,发现该网站在PC上运行一切正常,但在Ipad 上运行时,提示网页出现问题,需要重新提交表格,复新提交后,又异常缓慢,不断显示进度条,提交三五次后,不断忽略错误后,才能正常显示。

故障原因分析

问题现象:

网页在PC上运行一切正常,但在IPAD上运行时,出现问题。具体是:
当由sale.aspx 网面调用select.aspx 时,select.aspx 长时间无法呈现,提示当前网页出现错误,并不断出现对话框,提示“网页再现问题,重新提交表格数据?”多次确认后,勉强网页才能显示出来,select.aspx提交数据到sale.aspx,又出错。
根据出错情况,分析测试出错的网页select.aspx.
开始怀疑可能是服务器在生成select.aspx时,延迟较长,导致网页出错,调用方式如下:

 this.Response.Redirect("select.aspx?" + "currentPage=" + Session["currentPage"].ToString(), false);

后来,认真分析select.aspx的代码,包括利用浏览器,认真分析浏览器上的纯html代码,没有发现select.aspx的代码有什么问题,本身网页数据量不大,不会导致这个问题。
无奈之下,又在手机上使用这个系统,发现手机上使用与PC上使用一样,一切正常。真是见鬼了。
又将调用selectd.aspx 的方式做了修改如下:

this.Server.Transfer("select.aspx?" + "currentPage=" + Session["currentPage"].ToString(), false)

但是故障依旧。~~~~~~
在万般无奈,无计可施的情况一,一日试着用另一个网页shoppingCart.aspx调用select.aspx,居然在IPAD上正常运行,未出现任何问题。
调用方式依然为:

 this.Response.Redirect("select.aspx?" + "currentPage=" + Session["currentPage"].ToString(), false);

是不是本身select.aspx没有问题,是因shoppingCart.aspx 和sale.aspx 这两个网页的问题,导致select.aspx出现问题呢?
经过认真排查,终于发现了问题,原因是虽然 shoppCart.aspx 和sale.aspx都使用了DropDownlList控件,两者都使用了相同的table数据,但仔细看引用数据表的select语句, 一个用了“SELECT * FROM [wzbmb] ”,一个使用了“SELECT * FROM [wzbmb] where xmlb=?”但后者限定了物资编码为一类物资,大约为1000个记录,前都使用了全部的物资编码,大约有几万条记录,前一语句,导致dropdownList在网页上生成了非常大量的项,由于IPAD本身已购买多年,内存小,过于大的网页导致系统不断的在缓存,在调用select.aspx网页时,缓存一直未结束,故导致在转到select.aspx网页时,表现为select.aspx网页再现故障。
经过几天的排查,问题出现在上一个网页,由于数据量太大,导致在IPAD上不能正常运行。但现在的手机和PC,内存都在8M以上,所心问题就没有表现出来。

启示:

在进行网页设计时,一定要关注动态网页在生成时产生的数据量,特别是一些控件在绑定表格数据时, 一定要尽量少的绑定数据,这样不但能提升用户的使用体验,还能防止在老旧设备上运行出错。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值