<body>    <form id="form1" runat="server">    <div>    <table width="90%" border="0" align="center" cellpadding="2" cellspacing="1" bgcolor="gray">        <tr >           <td class="trs"> 所在洲:</td>           <td>               <select name="sel1" id="sel1"  >               <option value="" selected="selected">-----请选择-----</option>               <option value="1">亚洲</option>               <option value="2">欧洲</option>              </select>           </td>        </tr>        <tr>           <td class="trs">国家:</td>           <td>            <select name="sel2" id="sel2"   >
            <option value="" selected="selected">-----请选择-----</option>
                        </select>                       </td>        </tr>        <tr>           <td class="trs">省份:</td>           <td>
           <select name="sel3" id="sel3"  > 
            <option value="" selected="selected">-----请选择-----</option>
            </select>
            </td>
          
        </tr>        <tr>           <td class="trs">城市:</td>           <td> 
           <select name="sel4" id="sel4"  > 
            <option value="" selected="selected">-----请选择-----</option>
            </select> 
            </td>        </tr>          <tr>           <td class="trs">地区:</td>           <td> 
           <select name="sel5" id="sel5"  > 
            <option value="" selected="selected">-----请选择-----</option>
            </select> 
            </td>        </tr>
        </table>    </div>    <div id="ajax" style=" cursor:pointer">ajax</div>
      <div id="loading"  class="display">加载中……</div>
       <div id ="a1"></div><br />
       <br />
       <br />
       <br />
       <div id ="test">gfdg</div>    </form></body>
问题:我的意思是将这是个标记选择器同一成一个函数,这样再多的selec也可以应付,    我的思路是自动获取已选择的select的id,这样就可以进一步操作了,可我不知道如何编写代码;请高手不吝施教还有学习jQuery有没有什么比较好的书或者网站,谢谢

解决方案 »

  1.   

    $(':select')获取当前页面的所有INPUT TYPE=SELECT;
    $('input[selected]')获取当前页面被选中的select标记jquery的书可以看看jQuery in action 2nd
      

  2.   

    将这是个标记选择器同一成一个函数,这样再多的selec也可以应付!没明白楼主的意思!
      

  3.   

    function operSelect(sid){
        var $select = $("#"+sid);//你要操作的select
        //下面写你想作的操作
    }是这意思?
      

  4.   


                $("#sel1").change(function () {                var parentid = $(this).val();                ajax(parentid, 1);            })            $("#sel2").change(function () {                var parentid = $(this).val();                ajax(parentid, 2);
                })            $("#sel3").change(function () {                var parentid = $(this).val();                ajax(parentid, 3);
                })            $("#sel4").change(function () {                var parentid = $(this).val();                ajax(parentid, 4);
                })
    这个问题还要加上这段代码。我的意思是重构这些代码。这样可以应付很多个select
     
      

  5.   

    正解,调用operSelect方法,传入你想操作的select控件的ID,就可以随便得到你想要的select控件的jQuery对象。
      

  6.   


    关键是我那id不知道,我想动态的获得id,
      

  7.   

    $("#sel1").change(function () { var parentid = $(this).val(); ajax(parentid, 1);  }) $("#sel2").change(function () { var parentid = $(this).val(); ajax(parentid, 2);
      }) $("#sel3").change(function () { var parentid = $(this).val(); ajax(parentid, 3);
      }) $("#sel4").change(function () { var parentid = $(this).val(); ajax(parentid, 4);
      })
    这个问题还要加上这段代码。我的意思是重构这些代码。这样可以应付很多个select循环绑定:for(var i=1;i<=4;i++)
    {
    (function(i){
    $("#sel"+i).change(function () { var parentid = $(this).val(); ajax(parentid, i); });
    })(i);
    }
      

  8.   

    这个也是个方法,可是要用什么方法来触发for这个循环语句?