subString只能满足我第一个要求,当字数小于20时怎么补充?

解决方案 »

  1.   

    你先将从数据库中提取的数据加上20个空格,再subString截取前20位,即可满足你的要求;
      

  2.   

    如果用 的话则有时会出现 & , &n , &nb , &nbs 或 &nbsp 的字符
      

  3.   

    str += "                    "; //20个空格
    str = str.substr(0, 20);
      

  4.   

    meizz(梅花雪)的方法和chenmax(小刀)的差不多str="你好";
    str += "                    "; 
    str = str.substr(0, 20);如上我得到的结果是:“你好 ”(后面只占很小的位置,长度不够)但我想得到的是“你好              ”(后面应该占相当于20个空格的位置)
      

  5.   

    空格有全角和半角之分
    str += "                    "; //20个空格
    str = str.substr(0, 20);
      

  6.   

    str="你好";
    var len = str.length;
    if(len >20){
        str = str.substring(0,20);
    } else{
        for(int i=0;i<20-len;i++)
            str += "&nbsp;";
    }
      

  7.   

    “数据库中的空格提取出来和实际的长度不等”
    --------
    什么意思?
    数据库里面的值,应该是忠实的值
    而不是经过转化后的值
    如果数据库里的是&nbsp;
    显示的结果应该是&nbsp;
    而不是一个空格.
    要把数据库里的&nbsp;忠实的显示,就得从数据库取出后进行转换,将转换结果输出到html里。
      

  8.   

    用空格或&nbsp;填充空白都会因字体的不同而导致长度的不同。估计你加空格是为了固定格式,换一种思路,用样式表控制吧,截字不是好方法。
      

  9.   

    这种情况我也碰到过,oracle数据库中的空格跟显示在页面上的空格效果不一样,不知跟字符集是不是有关系。
      

  10.   

    楼主八成是还没有搞清楚html是如何处理空格的,呵呵。回去补课吧。