• 支持ff,ie的回车提交


    very good good article

    http://www.cnblogs.com/joylee/archive/2010/04/12/javascriptandfoucs.html

    可能用jquery会简单点,可是我没有找到,

    先上代码

    function searchsub2(){

    var str;

    str=encodeURIComponent(document.getElementById("q").value);

    //alert(str);

    //var url = "/qq/?q="+str+"&timestamp="+new Date().getTime();

    //var url = "/q/"+str+"/?t="+new Date().getTime();

    //var url="/q/"+str+"/"

    var url="/q/"+str+".html"

    window.location.href=url;

    }

    function keydownsearch(evt,callback)

    {

            evt = (evt) ? evt : ((window.event) ? window.event : "")

            keyCode = evt.keyCode ? evt.keyCode : (evt.which ? evt.which : evt.charCode);

            if (keyCode == 13) {

            callback();                   //搜索事件                               

        }

    }

    调用的时候

    <input type="text" value="搜搜你要的商品" name="q" id="q" onclick="tabchange()" onblur="inputreset()" onkeydown="keydownsearch(event,searchsub2)"/>

    这里还有一个要点是type="text",如果在一个页面只部署这样一份代码可能没问题,但是要部署两份这样式的代码,如果type="submit"就会有问题,在ie下有,在ff下没有,我测的是这样,多亏上面链接文章中的提醒

    总结:
    1、页面回车事件尽量不要写在document.onkeydown中,这样只要回车就会首先触发改JS事件,一般写在文本框中。
    <input type="text"  onkeydown="keydownsearch(event)"  />
    2、页面中如没有为按钮某按钮为焦点,回车后首先执行的是表单提交,也就是<input type="submit" />的服务器事件

    用的时候还是费了一些公司,

    refference:

    http://blog.sina.com.cn/s/blog_4cd978f90100lbco.html

    http://www.cnblogs.com/Mainz/archive/2009/05/29/1491844.html

  • 相关阅读:
    设计模式面试
    Netty面试
    Nginx面试
    java后端面试
    springboot面试专题及答案
    SpringBoot整合Mybatis,TypeAliases配置失败的问题
    vscode调试html文件
    Linux性能检查命令总结[转]
    如何创建systemd定时任务
    Systemd简介与使用
  • 原文地址:https://www.cnblogs.com/lexus/p/1809205.html
Copyright © 2020-2023  润新知