JavaScript 如何获取第几个元素的属性(已解决)

zhq_zhq · 2014年10月29日 · 最后由 zhq_zhq 回复于 2014年10月30日 · 2410 次阅读
$(function(){
   $('.main_test a').each(function(i){
        this.onclick=function(){
             alert(i+1);
             $(".main").each(function(){
                  $.ajax({
                          type: "get",
                          url: "/monitoring/orders/get_orders",
                          data: {
                                id: $(".main").find('.main_test a').eq(i).attr('href'),//如何获取到属性
                          },
                          success: function(data){

                             $('#dialog_content').html(data);
                          }
                      });
                      return false;
              });
             return false;
        };
   });
});
<div class="main">
     <div class="test"> 
        <a href="1234565">百度</a>
     </div>
     <div class="test"> 
        <a href="789">google</a>
     </div>
     <div class="test"> 
        <a href="http://www.111cn.net">msn</a>
     </div>
     <div class="test"> 
       <a href="7784">qq</a>
     </div>
</div>

你确定$("#main")这东东在你给的 html 片段中是存在的?

呵呵,有时 id 和 class 是会傻傻分不清楚的

@ywjno @kepaning 对不起打错了!

@ywjno @kepaning 程序中代码是

<div class="main">
   <div class="main_test">
      <a href="#<%=old_man.id%>" onclick="showBg('dialog','dialog_content');">
    <%=old_man.name%>
      </a> 
   </div>
</div>

你确定 main_test 这东东在你给的 html 片段中是存在的? 另外直接写 $('.main .test a').eq(i) 不好么?另外试试看把 attr 换成 prop

#3 楼 @zhq_zhq 为什么 JS 代码段里面要有两个 each 啊?

@kepaning 第一个 each 判断是第几个元素,第二个 each 是取得一组内的一个对象

问题已解决!谢谢大家的帮助

需要 登录 后方可回复, 如果你还没有账号请 注册新账号