$(this).children("td[name='st']").html();

解决方案 »

  1.   

    首先,td标签没有name属性;
    第二,live方法已经过时了。应该用on方法。
      

  2.   

    按道理来说你那个是能获得的,如果不能的话看看有没有加上$().ready(function(){});
    例如:
    $().ready(function(){
      $(".spmc_tr").bind("dblclick",function(){  
         $(this).children("[name='st']").html();//看你的标点是中文的;,试下换换英文的;
      });  //第二种方法
      $("table").dblclick(function(){
        if( $(this.target).attr('name') == 'st' && $(this.target).is('td') ){
          alert($(this).html());
        }
      })
    });
      

  3.   

    live方法是jQuery1.9之后干掉的1.9之前还是管用的
      

  4.   


    $(document).ready(function(){
    $(".spmc_tr").dblclick(function(){
       var s1 = $(this).children("[name='st']").html();
       alert(s1);
    })
      })
    <tr class="spmc_tr">
          <td name="st">aaaaa1</td>
            <td>aaaaa3</td>
         </tr> 
      

  5.   

    $(this).children("[name='st']").html();
    不要单引号
      

  6.   


    $(this).find("td[name=st]").html();
      

  7.   

    首先,最好不要使用双击事件(尽量避免)。
    第二,用最新的on方法代替live。(看你的jQuery有多新)
    第三,你的问题:
    // 如果只是选name=st
    $(this).children().find("td[name=st]").text();
    // 如果name除了st外有其余值
    $(this).children().filter(function(){
    return $(this).attr("name") === "st";
    }).text();
    自定义属性最好用一个类代替。并且最好不要用像name、id、type这种名字的自定义属性(即便该标签无此属性),往往会产生意料不到的结果。