<script>
x=11;
alert(valtostr(x,5));
function valtostr(val,len){
   s=val;
   for (i=0;i<len;i++) s="0"+s;
   return s.substr(s.length-len);
}
</script>

解决方案 »

  1.   

    最好能以字符串形式来传输,如果没有加上引号,默认是number类型,变量存储的时候如果0开头的都会被丢弃.
    不管后台用什么脚本,应该都是当成字符串传递的吧
    var j = "<%=数据库内容%>"
      

  2.   

    产生问题代码如下:
    function change_channel(st_id)
    {
    var str=st_id;
      window.open("channel_change.php?st="+str,"");
    }
    st_id即位数据库中的00001,00002,等数值.
    但是以上代码返回的是1,2
    我用的脚本是php
      

  3.   

    问题不在于
    var str=st_id;
    在于传入函数的时候就已经是数字了在调用的时候修改,如:
    change_channel("<%=st_id%>")
      

  4.   

    by 8988(晓月) & qiushuiwuhen(秋水无恨) method , try :function change_channel(st_id)
    {
      var strVal = valtostr(st_id,5);
      var strUrl = "channel_change.php?st=" + strVal
      window.open(strUrl,"");
    }function valtostr(val,len){
       s=val;
       for (i=0;i<len;i++) s="0"+s;
       return s.substr(s.length-len);
    }
      

  5.   

    修改valtostr函数function valtostr(val,len){
    return ((""+val/Math.pow(10,len)).split(".")[1])
    }