比如一个页面,有多个DIV
<div id="abc"></div>
<div id="d1"></div>
<div id="d2"></div>
<div id="d3"></div>我怎么去获取以id以“d”开头的DIV对象,其他对象像id为abc的对象则不会被获取

解决方案 »

  1.   

    用 jQuery吗???
    我想到两种方法
    1 是用正则表达式:我也没写过不知道正则怎么写 反正只要匹配以#d开头的就行  理论上好像行 不知道能不能成功
    2 如果这些以d开头的div 都在一起的话 可以把这些div放到另一个div中比如
    <div id="big">
    <div id="abc"></div>
    <div id="d1"></div>
    <div id="d2"></div>
    <div id="d3"></div>
    </div>
    然后用each函数遍历一下
    $("#big > div").each(function(index){ //用each函数获取index 第index+1个div
      for(var i=0;i <$("#big > div").length;i++)
      {
        if($("#big > div").eq(index).attr(id).indexOf("a")==0) //用eq获取第index+1个div
        {
            //这里面证明ID的开关为a
        }
      }
    })
      

  2.   

    现在的问题是不在一起,就像下面这样的
    <table>
     <tr>
        <div id="abc"><td></td></div>
     <tr>
     <tr>
        <div id="d1"><td></td></div>
     <tr>
     <tr>
        <div id="d2"><td></td></div>
     <tr>
     <tr>
        <div id="d3"><td></td></div>
     <tr></table>
      

  3.   


     var ds = document.getElementsByTagName("div");
             for(var i = 0 ; i < ds.length ;i++){
                if(ds[i].id.indexOf("d")==0){//判断一下是不是'd'开头的
                    alert(ds[i].id);
                }
             }jq :$("div[id^='d']");
      

  4.   

    $("div[id^='d']");
    这种写法是jQuery和用正则表达式来匹配的吗?