zoukankan      html  css  js  c++  java
  • BootStrap的typeahead使用过程中遇到的问题

         
       在项目中用到了自动补全输入框,解决下拉列表数据过多时加载慢的问题,从速度到交互上得到了好些赞,但是今天早上出现了一个很诡异的问题,有同事反应机型下拉列框选完之后会出现问题,本来每个选项用一个分号分隔,现在成了2个分号了,导致查数据有问题。于是开始debug。
    现象:
      
    分析:
    昨天下班前测试ok,问题是今天出现的,svn show log发现代码没有改动过,实属诡异,不能理解。
            还是先debug,从js开始走起:选中下拉列表选项之后走select方法,其中的updater负责给item后加一个分号分隔符,但是整个typeahead.js中也就是在select中调用了updater方法,每次走完select之后也都只是1个分号。             
    于是考虑到问题是不是处在其他地方,鼠标选中记录,然后点击其他地方,会增加1个分号,所以应该是在blur函数里面:
     
    继续debug跟进blur函数,发现也没有加分号的地方。异常的诡异。
            -------努力半个小时,出了好多汗之后----- 竟然是数据问题,有木有啊有木有--有个空的脏数据,每次选1条记录,但是和选2条记录一样一样的,会给空记录后面也加一个分号;
           顿时理解上去了,为什么代码没改变,功能却异常了;
           为什么同样的控件,别的都是ok的,只有机型出现了问题;
     总结: 
            1. 开发久了,出问题第一反应都是从自身找原因,觉得是自己的问题,立马去审视代码,debug。其实有时候不是代码问题,该自信时候还是要自信一点点~
             2. 脏数据什么的最可恶了。        
  • 相关阅读:
    ActionBar Fragment的一个sample activity; 及获取runningAppProcess及跳转
    优化后台推送的service,减少被杀死的几率
    64位win7安装ubunto最新14.04的过程,及出现的问题的解决
    一次非线上iowait高的情况的检查
    一个愚蠢的python逻辑语法错误
    Bellman-Ford算法解决单源最短路问题
    Floyd算法解决多源最短路径问题
    最短路问题Dijkstra算法
    最小生成树之Kruskal算法
    最优二叉搜索树
  • 原文地址:https://www.cnblogs.com/annyliu/p/3612305.html
Copyright © 2011-2022 走看看