我的html里有几个 ID=aaa1,aaa2,aaa3的元素,其中1,2,3这些数字是数据库里读出来的,不是连续的数字那么我想用document.getElementById()来取得这些以aaa打头的元素,该怎么写代码呢?

解决方案 »

  1.   

    var i=1;
    var obj = document.getElementById("aaa"+i);
      

  2.   

    使用jquery。<style>
       .a{}
    </style>
    <div class="a" id="aaa123"></div>
    <div class="a" id="aaa133"></div>
    <div class="a" id="aaa2323"></div>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script><script language="javascript">
        $(".a").each(arr, function(){这里是你的html代码。attr就是你要访问的对象。});
    </script>
      

  3.   

    上面的有点错。使用jquery。 <style>
       .a{}
    </style>
    <div class="a" id="aaa123"></div>
    <div class="a" id="aaa133"></div>
    <div class="a" id="aaa2323"></div>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script><script language="javascript">
        $(".a").each(arr, function(){这里是你的javascript代码。attr就是你要访问的对象。});
    </script>
      

  4.   

    也可以这样:
    var arr = new Array();
    var divarr = document.getElementsByTagName("div");
    for(var i=0;i<divarr.length;i++){
    var str = divarr[i].id;
    if(str.indexOf("aaa")==0){
    arr.push(divarr[i]);
    }
    }
      

  5.   

    元素标记名称,比如div var el = document.getElementsByTagName('div');
    for (var i=0;i<el.length;i++)
    {
       if (el[i].id.indexOf('aaa') == 0)
           return i;
           //return el[i];
           //return el[i].id;
    }
      

  6.   

    可以判断某个标记下是否有子节点再循环出所有子节点 indexOf
      

  7.   

    var el = document.getElementsByTagName('div');
    for (var i=0;i <el.length;i++)
    {
      if (el[i].id.indexOf('aaa') == 0)
         return el[i];
    }
      

  8.   

    给对象相同的name值 然后getElementsByTagName 得到他们的集合。
      

  9.   

    var obj = document.getElementById("aaa"+i);
    i为从数据库里读出来的变量
      

  10.   

     document.getElementById("aaa"+i); 
    把i传进去就行了
      

  11.   

    JS还是简单比较好。如果从数据库来的,肯定有某个对象存放对应的值,假定取其第i个值为DBObject.get(i),
    那对应的元素对象就应该是
    var i;
    var obj = document.getElementById("aaa"+DBObject.get(i));
      

  12.   

    像这种前端处理起来不太方便的逻辑。为啥不在server端处理后再返回到前端操作呢。比如从server端返回一个json 格式的数据。。var jsonObject = {id:'your element id',data:'your data'}.前端取jsonObject.id。不就可以了。有些时候能在后端高效处理的问题。不要放到前端。