Firefox Ie 下的js验证

03 9, 2010 6 评论放大字体

闲来无事,姐说需要个分类信息的系统。

其实现在网上这中现有的程序多的是,而且各个功能都差不多,区别就在于程序大小和可改造性。最后我选择phpmps ( http://www.phpmps.com )。两个原因,一是刚一开始就找到的他,还有一个原因别的像php168,帝国cms等等的功能都太多复杂,所以就放弃了。

上传,改权限,傻瓜式安装,很简单的说,用不了多久就能安装成功。然后下来是设置后台的一些参数,就和wordpress后台设置是一样的。

安装设置成功了,就得测试数据了

先用ff做的测试,刚一开始就发现了问题,发布信息的时候居然点击不了发布按钮。然后用IE6.0测试了一下,完全正常,所以就得开始研究到底是哪儿出现问题了。

首先排除程序整体的可执行性,因为ie下是可行的。

因为是发布信息类的系统,所以提交数据少不了那么几项,题目,内容,发布人,联系方式之类的。系统标示了相应必须填写的字段。所以ie下和ff下都会去填。唯一不同的是,当我在ie下只填写了系统标示的字段时,点击提交按钮还会有另外一下提示,就是QQ,Email,姓名三个当中必须要填写 一个,只要填写就没有问题,可以正常提交。这下大体明白了问题可能就出现在这三个字段的填写上。接下来在ff的测试中除了系统明确提示的填写了之外,我填写了QQ,Email,姓名中的任何一个的时候都会正常提交。所以百分之百的确定了,问题出在js对这三个字段的验证上。

查看相应的js文件,是这么写的:

var qq = document.getElementById(“qq”);

var name = document.getElementById(“name”);

var email = document.getElementById(“email”);

if(qq.value==”" && name.value==”" && email.value==”")

{

$(“#c_qq”).html(“<font color=red>联系方式必须填写一项</font>”);

qq.focus();

return false;

}

起初怀疑是这段代码的问题,因为js略懂一点。后来验证了一下我的想法是错误的,因为随便一改的话,ie下就无法执行了,说明js代码没有任何问题。

因为if判断里面是判断这几个值是否为空,所以我就先把这个几个值alert了一下,这下发现大问题了,我alert了三个值,但是只弹出来两个窗口,正常的话应该是三个的,所以差不多明白了,有一个没有获取到值。检查了一下模板文件,果真发现email表单中缺少id=”email”这个东西。添加,上传,重新验证,ie完全正常,ff完全正常

问题解决了,但是我看到的知识表面的问题,深一层的问题我暂时还不明白,留给高手解决.

要饭的 原创作品,请遵循版权协议,转载请注明地址→[Firefox Ie 下的js验证]
目录:未归类的 | Others  标签: , ,    
分享到: 人人网 QQ 百度 Twitter Google Reader 开心网 Google Buzz

6 评论 我要评论

  • 1F
    九站  16:32 Mar 09, 2010    

    嗯?看题目没明白博主说的是什么,看文字也没了解是要做什么。
    看代码确实是表单验证脚本。

  • 2F
    要饭的  16:44 Mar 09, 2010    

    @九站 哈哈,见谅了,语言表达有些繁琐,是为了凑字数,恩 ,就如你所说的就是个js验证表单的问题。
    引出来一个问题就是为何同样的代码ie执行无误,而ff通不过

  • 3F
    zwwooooo  17:15 Mar 09, 2010    

    看完了评论才知道说啥,哈

  • 4F
    要饭的  17:18 Mar 09, 2010    

    @zwwooooo 哈哈,看来我已经走上了各大门户网站的道路上了,不看内容,只看评论

  • 5F
    中国球迷网  19:03 Mar 09, 2010    

    谢谢!!
    看到了,真的很感谢…我想如果发文时删除链接,开头稍加改动就更好了…哈哈,我是不是要求太高了???
    ps:对于你这个太专业的帖子,我就不说话了

  • 6F
    要饭的  21:40 Mar 09, 2010    

    @中国球迷网 木问题的,我有空就会往上面弄的,放心好了
    按你的要求来,哈哈

我要留言 ↓

欢迎您再次回来, (更换)

提交中,机器正在处理...