现在有一个疑问,看着代码描述
<!-- 一个按钮 --><form name="searchForm">
     <input type="button" align="absmiddle" name="btnJobarea"  value="选择地区"  class="anbg"/>
</form>代码就这样,现在代码中,可以通过  searchForm.btnJobarea 来获取当前按钮的元素。我的需求:一个权限选中后再选择当前权限可以操作的城市(就是说,不是单一的这一个 btnJobarea按钮了),会有多个代码改动:
<form name="searchForm">
     <input type="button" align="absmiddle" name="btnJobarea0"  value="选择地区"  class="anbg"/>
     <input type="button" align="absmiddle" name="btnJobarea1"  value="选择地区"  class="anbg"/>
     <input type="button" align="absmiddle" name="btnJobarea2"  value="选择地区"  class="anbg"/>
     <input type="button" align="absmiddle" name="btnJobarea3"  value="选择地区"  class="anbg"/>
</form>加入现在有4个按钮,我要在页面加载的时候就要获取它们的 元素 就像上面说到的 "searchForm.btnJobarea"
我要获取 "searchForm.btnJobarea0、searchForm.btnJobarea1、searchForm.btnJobarea2、searchForm.btnJobarea3"现在我能通过Jquery把这4个的name 值取到,但接下来的 searchFOrm.btnJobareaX 这块,不知道怎么拼接$(":input[name^='btnJobarea']").each(function(){
var jbtn = $(this); // 获取当前的jquery对象
var btnName = jbtn.attr("name");  或得当前按钮元素的名称
                        // 在取到这个btnName的时候 也就是接下来的(btnJobarea0、btnJobarea1)这些
                        如何动态的做成searchForm.btnName的样子
});

解决方案 »

  1.   

    var theBtn = (new Function("return searchForm." + btnName))();
      

  2.   


    不好用啊,我把代码贴出来,帮忙看看要怎么改?
    $(":input[name^='btnJobarea']").each(function(){
    var jbtn = $(this); // 获取当前的jquery对象
    var btnName = jbtn.attr("name");
    vat theBtn = (new Function("return searchForm."+ btnName)());//这里有错误
    var textName = btnName.substring(3,btnName.length);
                            var param = { cfg : this.cfg , openNodes : this.searchForm.btnJobarea };// 要在这里做替换,朋友,在帮忙下,刚才哪个动态的创建方法,不太会使
                            var jaLayer = new JobareaLayer( param );
    });