Javascript 用jquery遍历它会给我带来未定义的

Javascript 用jquery遍历它会给我带来未定义的,javascript,jquery,radio-button,Javascript,Jquery,Radio Button,当我单击.getdata时,我想从.getdata转到name=top并读取所选选项的值(在本例中为0),但我很难找到它。我一直没有定义 <div class="main"> <div class="branch"> <div class="element"> <label>top color:</label> <input type="radio" value="1"

当我单击
.getdata
时,我想从
.getdata
转到
name=top
并读取所选选项的值(在本例中为0),但我很难找到它。我一直没有定义

<div class="main">
   <div class="branch">
       <div class="element">
          <label>top color:</label>
          <input type="radio" value="1" name="top">black
          <input type="radio" value="0" name="top" checked="checked">white
          <input type="radio" value="null" name="top">transparent
       </div>
   </div>
   <div class="controls">
      <a class="getdata">get data</a>
   </div>           
</div>

<div class="main">
....    
</div>
这是我的html。
divclass=“main”
会重复,因此我不能简单地选择
input[name=top]
。它必须通过遍历树到最近的
输入[name=top]
。有人能把这个弄对吗?我开始认为这是一个浏览器错误,因为我尝试了不同的选项,但都没有定义

<div class="main">
   <div class="branch">
       <div class="element">
          <label>top color:</label>
          <input type="radio" value="1" name="top">black
          <input type="radio" value="0" name="top" checked="checked">white
          <input type="radio" value="null" name="top">transparent
       </div>
   </div>
   <div class="controls">
      <a class="getdata">get data</a>
   </div>           
</div>

<div class="main">
....    
</div>

顶色:
黑色
白色
透明的
获取数据
....    
  • 方法上放置一个事件,以遍历到
    .main
    元素

  • 然后将该方法与和一起使用,以获取选中的
    name=“top”
    收音机

  • 最后使用该方法获得其值


谢谢。我想我的错误是,我使用的是最近的()来查找下游,但它不起作用。需要引用!:)+1代表彻底性。
$(".getdata").click(function(){
        selectedValue=$(this).parent().prev().children().children("input[name=top]:checked").val();
        console.log(selectedValue);
});