当前位置:编程学习 > JAVA >>

我们爱分享---最近使用js遇到的一些问题

   最近做东西,用jquery,很多自己懒的做了所以用了很多插件,这里分享一下遇到的一些问题。
   
   日历插件推荐一个国内的My97DatePicker,使用起来很简单,这个真不是做广告的。。

    针对jquery的插件tinymce和validation在验证textarea不能同时工作的问题。原因是tinymce在提交第一次时并没有把信息存到表单中,所以无法验证。经过查了下一,官方作者也给了解决方案,DEMO:http://jquery.bassistance.de/validate/demo/tinymce/ ,不过我是使用了以下的解决办法:

$(function() {  
        $("input[type='submit']").click(function() {  
            tinyMCE.triggerSave();  
        });  
      
        //验证规则写在此处
        $("#emailForm").validate({  
                rules: {  
                    body: {  
                        required:true  
                    }  
                },  
                      
                errorPlacement: function(label, element) {  
                
                if (element.is("textarea")) {  
                    label.insertAfter(element.next());  
                } else {  
                    label.insertAfter(element)  
                }  
                }  
        });   
    });  

这个方法很好的解决了问题,虽然后来我弃tinymce改用xheditor,原因是xheditor是国内的,看着顺眼。好像csdn博客现在用的就是xheditor,不过csdn博客的有bug,已经反映。。

    使用jquery的uploadify做的文件上传,这个遇到的问题就比较多了,总结起来就是session丢失的问题,过不了filter的那一关,我的解决办法是截取url,判断是上传就让filter放行。上传后在session中取不到用户信息,这个我的解决办法是传入参数用户唯一标识,然后去数据库查出用户信息进行使用。

    再说一下两个和插件无关的。在让用户输入页码时验证用户不能输入非数字时,最好用onkeydown事件,因为onkeypress在英文输入法还能阻止,用中文输入法就检查不出来了,也就是说我切换到中文输入法回车能输入非数字。但是在火狐中没起作用,最后查了一下原因是他们的事件不一样,改了一下代码,如下

$("#pageNo").bind("keydown", function(e) {  
          
        e=e?e:window.event;  
        var keyCode = e.which?e.which:e.keyCode;  
        if(!((keyCode>=48&&keyCode<=57 || keyCode==8 || keyCode==46))) {  
            return false;  
        }  
    });  

改了之后又发现问题了,就是在其他浏览器中文输入法也不能输入非数字,但火狐却能,我就又在onsubmit事件中判定了一下,如果不是输入的值不是介于第一页和最大页数之间,强制改为第一页,这样一来上面的代码就有点多余了,其实只需要在提交时验证 如果非数字强制变成 1 ,我的想法是你既然存心捣乱,我就不客气,强制你看第一页。

    使用了frame,然后如果session过期时会重定向到登陆页面,但有时候只在一个frame中重定向了解决办法,在登陆页面加上一下js代码

if (window.self != window.top) {  
    window.top.location = window.self.location;  



   目前就发现这么多,而且jquery也是刚学,敬请指教! --------------------编程问答-------------------- 学习了 --------------------编程问答-------------------- 学习了, 以后遇到这类问题可以避免过去 --------------------编程问答-------------------- --------------------编程问答-------------------- --------------------编程问答-------------------- 顶···· --------------------编程问答-------------------- 学习了~ --------------------编程问答-------------------- 学习了 --------------------编程问答-------------------- 学习了 --------------------编程问答-------------------- --------------------编程问答-------------------- 看看 ~~~~~~~~~ --------------------编程问答-------------------- OK 学习者 --------------------编程问答-------------------- --------------------编程问答-------------------- 学习啦! --------------------编程问答-------------------- --------------------编程问答-------------------- 分享帖,必须顶 --------------------编程问答-------------------- mark --------------------编程问答-------------------- validation最好是做双重的,client端和server端,要知道总用用户是禁用js的。 --------------------编程问答-------------------- --------------------编程问答-------------------- 呵呵。。。。 --------------------编程问答-------------------- --------------------编程问答-------------------- 不错不错 --------------------编程问答-------------------- mark --------------------编程问答-------------------- tytytyr --------------------编程问答-------------------- 学习学习、、、 --------------------编程问答-------------------- 试一下看看好不好用 --------------------编程问答-------------------- 个人总结分享的东西,有价值 --------------------编程问答-------------------- dddddddddddddd --------------------编程问答-------------------- 谢谢分享 --------------------编程问答-------------------- 有价值呀 ~~~~~~ --------------------编程问答-------------------- 学习中…… --------------------编程问答-------------------- 对于Jquery新手的我很有帮助 --------------------编程问答-------------------- 顶~~~ --------------------编程问答-------------------- --------------------编程问答-------------------- 不错。。。。。。。。。。。。。 --------------------编程问答-------------------- 学习了, 以后遇到这类问题可以避免过去
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,