妞爸 发表于 23-7-2013 13:31:43

发现个问题,不能回复

firefox
如果进入一个帖子回帖,ok。然后我想再灌个水,点发表帖子,发不出去。(不是间隔15秒的问题,是没有任何提示)

妞爸 发表于 23-7-2013 13:32:06

再试试看行不行

妞爸 发表于 23-7-2013 13:33:26

确实是有这样的情况
我再回复就不行了

补充内容 (23-7-2013 12:33):
这个是刷新过页面后才发上去的

ubuntuhk 发表于 24-7-2013 13:33:23


谢谢妞爸的反馈,我也发现这个问题了,chrome也有同类问题,暂时还不知道什么原因。

cais 发表于 24-7-2013 23:01:00

我来试试看。。:D

cais 发表于 24-7-2013 23:16:31

再来一次

cais 发表于 24-7-2013 23:38:18

问题出在/static/js/common.js里面。
每次Form submit的时候,它都要调用hostconvert()把form.action的relative url变成absolute url。。
在hostconvert里面,它只看进来的url是不是http开头的,不是就加上SITEURL。但是现在SITEURL只是/ibbs/而已,没有包括前面完整的hostname, http://www.freeoz那块。
所以加了再次之后,form action就变成/ibbs/ibbs/forum.php...结果就不行了。function hostconvert(url) {
        if(!url.match(/^https?:\/\//)) url = SITEURL + url;
        var url_host = getHost(url);
        var cur_host = getHost().toLowerCase();
        if(url_host && cur_host != url_host) {
                url = url.replace(url_host, cur_host);
        }
        return url;
}
按道理应该是把SITEURL弄成带hostname的。我记得上次好像也是这个问题,后来ub已经改好了。
不行的话,也可以再加个条件判断,看是不是/开头的。是,也不加SITEURL。if(!url.match(/^https?:\/\//) && !url.match(/^\//)) url = SITEURL + url;另外getHost()这个function好像有问题。一开始默认的host应该是赋值null,不是"null"吧。现在这样,搞得在hostconvert里面,明明url里面没有hostname,还是会跑一遍url = url.replace那句,只是因为"null"没有在url里面出现,所以没有replace到什么,url的值没有变。

ubuntuhk 发表于 25-7-2013 02:16:43

测试一下修改完的代码

ubuntuhk 发表于 25-7-2013 02:19:11

再次测试一下修改完的代码

ubuntuhk 发表于 25-7-2013 02:19:30

再次测试一下修改完的代码

ubuntuhk 发表于 25-7-2013 02:19:59

现在ok了,@cais 太有才了:good:good:zan:zan

ubuntuhk 发表于 25-7-2013 02:21:59

cais 发表于 24-7-2013 22:38 static/image/common/back.gif
问题出在/static/js/common.js里面。
每次Form submit的时候,它都要调用hostconvert()把form.action的rel ...

我把下面这一行直接给注释了:
//if(!url.match(/^https?:\/\//)) url = SITEURL + url;
getHost()这个函数我暂时没懂,呼 @老鼠爱上猫 来帮忙看看是否要改。

ubuntuhk 发表于 25-7-2013 02:22:51

妞爸 发表于 23-7-2013 12:32 static/image/common/back.gif
再试试看行不行

@妞爸 现在再试试看。

周星星1832 发表于 25-7-2013 12:34:48

最近没看到MICHELLE,大概暂时不来,用你的名字测试一下
@MICHELLE07

cais 发表于 26-7-2013 00:33:08

我来试试看。

cais 发表于 26-7-2013 00:33:28

再试试。。。

cais 发表于 26-7-2013 00:33:50

好像可以了耶 :victory:

cais 发表于 26-7-2013 00:35:32

ubuntuhk 发表于 25-7-2013 01:21 static/image/common/back.gif
我把下面这一行直接给注释了:getHost()这个函数我暂时没懂,呼 @老鼠爱上猫 来帮忙看看是否要改。

嗯。它这一块用的不是一般的ajax。是用一个隐藏的iframe做target,直接用普通的form submit,所以不需要把相对的url换成绝对的url。

妞爸 发表于 27-7-2013 01:13:22

hoho,我一转头下去引出不少大牛

妞爸 发表于 27-7-2013 01:15:51

我再试试看

妞爸 发表于 27-7-2013 01:16:18

好像可以了

妞爸 发表于 27-7-2013 01:16:48

你确定吗?

妞爸 发表于 27-7-2013 01:17:39

我确定:victory::victory::victory:

ubuntuhk 发表于 27-7-2013 11:18:50

妞爸 发表于 27-7-2013 00:17 static/image/common/back.gif
我确定


谢谢妞爸帮忙抓虫~~
页: [1]
查看完整版本: 发现个问题,不能回复