<body>
<table>
<tr><td>list_code</td></tr>
<tr><td>200503090001</td></tr>
<tr><td>200503090002</td></tr>
<tr><td>200503090003</td></tr>
<tr><td>200503100001</td></tr>
<tr><td>200503100002</td></tr>
</table>
<input type=button value=get onclick='alert(get())'>
</body>
<script>
function get()
{
  var trs=document.getElementsByTagName('tr');
  var dt=gettime();
  var regx=new RegExp(dt,'ig');
  if(regx.test(trs[0].parentNode.innerText))
   {
     return parseFloat(trs[0].parentNode.innerText.substring(RegExp.lastIndex+4,RegExp.lastIndex+20))+1;
   }
  else
   {
     return dt+'0001';
   }
}
function gettime()
{
  var dt=new Date();
  return dt.getYear().toString()+(dt.getMonth()+101).toString().substring(1,3)+(dt.getDate()+100).toString().substring(1,3);
}
</script>

解决方案 »

  1.   

    谢谢你的建议,但是我在<tr><td>200503100002</td></tr>的后面手动的加了一条记录下去他就出错了,
    比如说
    200503110002
    他的下一条记录不会出来....................而是出现nan
      

  2.   

    不好意思,修改了一下:
    <body>
    <table>
    <tr><td>list_code</td></tr>
    <tr><td>200503090001</td></tr>
    <tr><td>200503090002</td></tr>
    <tr><td>200503090003</td></tr>
    <tr><td>200503100001</td></tr>
    <tr><td>200503100002</td></tr>
    <tr><td>200503100003</td></tr>
    <tr><td>200503110002</td></tr>
    </table>
    <input type=button value=get onclick='alert(get())'>
    </body>
    <script>
    function get()
    {
      var trs=document.getElementsByTagName('tr');
      var dt=gettime();
      var regx=new RegExp(dt,'ig');
      var str=trs[0].parentNode.innerText.replace(/\r\n/g,'');
      if(regx.test(str))
       {
         return parseFloat(str.substring(str.lastIndexOf(dt)))+1;
       }
      else
       {
         return dt+'0001';
       }
    }
    function gettime()
    {
      var dt=new Date();
      return dt.getYear().toString()+(dt.getMonth()+101).toString().substring(1,3)+(dt.getDate()+100).toString().substring(1,3);
    }
    </script>