function checkLoginName(){ var loginname = $('#loginName').val(); $.ajax({ url: "url?loginName="+loginname, type: "get", success: function(backdata) { //就是以下这行解决了chrome的页面全选问题 window.getSelection().removeAllRanges() ; if(backdata == 0){ $.messager.alert("提示信息", "您所填的登录名已存在,请重新填写", "error", function(){ $('#loginName').val(""); }); } }, error: function(backdata) { CDialog("操作失败:登陆名存在性检查异常"); } });}
今天遇到了一个神奇的浏览器兼容性问题(大概、应该是兼容性问题吧),就是做的一个添加人员的登录名失去焦点后验证库里是否存在该登录名的功能,在chrome浏览器下测试,只要一失去焦点就会出现页面全选的问题,然而火狐就没有这样的问题,就连IE也没有。
到底是什么问题其实我查了很久也没有弄清楚,试用了很多的方法,包括加入return false的方式,都是解决不了的,后来灵机一动,在验证函数中加了一句话:
window.getSelection().removeAllRanges() ;
对前端熟悉的朋友都知道,这句话是,清除所有的选中页面文本,然而我认为治标不治本,还有没有朋友遇到过这样的问题,求讨论解决方式和形成原因。
针对页面选中文本的使用方法,具体的可以参见http://www.xiaoboy.com/detail/1341545060.html