Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

common.js 代码不够严谨导致 undefined错误及解决

[复制链接]
mark35 发表于 2012-10-24 20:02:13 | 显示全部楼层 |阅读模式
本帖最后由 mark35 于 2012-12-3 19:26 编辑

X2.5回复短消息,控制台出现如下错误
TypeError: s is undefined

经查是static/js/common.js 大约648行

  1. function ajaxpost(formid, showid, waitid, showidclass, submitbtn, recall) {
  2.         var waitid = typeof waitid == 'undefined' || waitid === null ? showid : (waitid !== '' ? waitid : '');
  3.         var showidclass = !showidclass ? '' : showidclass;
  4.         var ajaxframeid = 'ajaxframe';
  5.         var ajaxframe = $(ajaxframeid);
  6.         var curform = $(formid);
  7.         var formtarget = curform.target;

  8.         var handleResult = function() {
  9.                 var s = '';
  10.                 var evaled = false;

  11.                 showloading('none');
  12.                 try {
  13.                         s = $(ajaxframeid).contentWindow.document.XMLDocument.text;
  14.                 } catch(e) {
  15.                         try {
  16.                                 s = $(ajaxframeid).contentWindow.document.documentElement.firstChild.wholeText;
  17.                         } catch(e) {
  18.                                 try {
  19.                                         s = $(ajaxframeid).contentWindow.document.documentElement.firstChild.nodeValue;
  20.                                 } catch(e) {
  21.                                         s = '内部错误,无法显示此内容';
  22.                                 }
  23.                         }
  24.                 }
  25.                 if(s != '' && s.indexOf('ajaxerror') != -1) {  // <------ 这儿
  26.                         evalscript(s);
  27.                         evaled = true;
  28.                 }


复制代码
原因是代码不够严谨,对于s可能的值未能考虑周全,正确的应该如下

  1.    if (typeof s === 'string' && s && s.indexOf('ajaxerror') != -1) {
复制代码
.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

评分

1

查看全部评分

枯心树 发表于 2012-10-24 20:08:47 | 显示全部楼层
这个就是俺那个问题??
回复

使用道具 举报

 楼主| mark35 发表于 2012-10-24 20:11:09 | 显示全部楼层
枯心树 发表于 2012-10-24 20:08
这个就是俺那个问题??

yes~~~ und 之一 ~~~
回复

使用道具 举报

让故事继续 发表于 2012-10-24 23:01:59 | 显示全部楼层
买不买呢?
回复

使用道具 举报

m.king 发表于 2012-10-25 09:00:15 | 显示全部楼层
{:soso_e111:}  居然还售价。。。。。。。。。
回复

使用道具 举报

m.king 发表于 2012-10-25 10:03:10 | 显示全部楼层
{:soso_e113:} 问题已经收到了,目前正在核查哈!!
回复

使用道具 举报

 楼主| mark35 发表于 2012-10-25 14:01:20 | 显示全部楼层
本帖最后由 mark35 于 2012-12-3 19:26 编辑
m.king 发表于 2012-10-25 09:00
居然还售价。。。。。。。。。

俺辛辛苦苦追踪代码小半天,复制粘贴也要动手,反正你版主看帖又不花钱,我赚点零钱应该的嘛,不然啥好处都没有就没兴趣了~

评分

3

查看全部评分

回复

使用道具 举报

 楼主| mark35 发表于 2012-10-27 22:21:19 | 显示全部楼层
m.king 发表于 2012-10-25 10:03
问题已经收到了,目前正在核查哈!!

bug出现在短信回复操作中。如果问题不能重现可上枯心树的论坛测试。
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2025-3-1 12:29 , Processed in 0.031016 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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