FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 3535|回复: 4
打印 上一主题 下一主题

发现一个用自定义回发机制处理时出错的Bug

[复制链接]
跳转到指定楼层
楼主
发表于 2012-2-25 19:18:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
测试如下,在页面中添加一个按钮:
<ext:Button ID="btnSend" Text="发送" runat="server" EnablePostBack="false"></ext:Button>
脚本代码:
function Test() {
   __doPostBack("test", "false");
}
服务端代码:
if (IsPostBack)
{
if (Request.Form["__EVENTTARGET"] == "test")
{
  if (Request.Form["__EVENTARGUMENT"] == "false")
  {
   Alert.Show("你好 ExtAspNet!", MessageBoxIcon.Warning);
  }
}
}
运行后点击“发送”一切正常。
如果此时将Test函数内的"false"改成其它值,再点击“发送”则弹出下面的错误:
行: 15
错误: 'undefined' 为空或不是对象

调试进去位置在:
Ext.Ajax.request({
...
success: function (data) {
var scripts = data.responseText;
var prefix = scripts.substr(0, 5);  <--------


沙发
发表于 2012-2-26 14:24:10 | 只看该作者
我把"false"改成"asdf",没有任何问题。。。
板凳
 楼主| 发表于 2012-2-26 21:37:59 | 只看该作者
本帖最后由 dennis 于 2012-2-26 21:39 编辑

我用是3.0.1.0版本。后来发现,只要在任何时候都向客户端发回信息,就不会有问题。也就是说,如果没有任何信息发回给客户端,data.responseText是未定义。
我下个最新版试试看
地板
 楼主| 发表于 2012-2-28 21:04:06 | 只看该作者
看来这个未定义错误不止一个地方有(前面一个老兄也发贴提到这个Bug了),我用的是IE8,使用revision:73369编译后测试问题仍存在。
主要原因是未对data.responseText有效性判断,希望在新版本中修复
5#
发表于 2012-4-1 22:48:06 | 只看该作者
dennis 发表于 2012-2-28 21:04
看来这个未定义错误不止一个地方有(前面一个老兄也发贴提到这个Bug了),我用的是IE8,使用revision:73369 ...

已经修正
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-5-14 19:51 , Processed in 0.045563 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表