我有以下html:
<input type="text" class="searchpersontxtbox" />
<input type="button" value="Find" class="findpersonbtn btn" disabled="disabled" />
<img class="loader" style="display: none;" alt="Loading..." src="@Url.Content("~/Content/Images/ajax-loader.gif")" />
<div class="peopleresultsdiv"></div>
<div class="contactType">
<input type="radio" name="searchtype" value="person" >Person
<input type="radio" name="searchtype" value="organisation" checked="checked">Organisation
</div>
<input type="text" class="searchpersontxtbox" />
<input type="button" value="Find" class="findpersonbtn btn" disabled="disabled" />
<img class="loader" style="display: none;" alt="Loading..." src="@Url.Content("~/Content/Images/ajax-loader.gif")" />
<div class="peopleresultsdiv"></div>
<div class="contactType">
<input type="radio" name="searchtype" value="person" checked="checked">Person
<input type="radio" name="searchtype" value="organisation">Organisation
</div>
所以这里有两个搜索。我想知道的是当点击查找按钮时如何确定单击了哪个单选按钮?因此,如果点击第一个查找按钮,那么它就是组织,如果点击第二个搜索,那么它就是人。
我想如果页面上只有一个搜索,我可以知道如何做到这一点但事实上有两个让我感到困惑。
答案 0 :(得分:0)
您可以使用JQuery确定所单击按钮的索引,然后使用相同的索引访问该无线电组:
$('input[type=button]').index($this)
FIDDLE: http://jsfiddle.net/hd72Q/
答案 1 :(得分:0)
如果这些是不同的搜索,那么恕我直言,您需要更改每个组中的无线电输入类型的名称,否则它们就像一个组。因此,对于第二次搜索,它可能是
<input type="radio" name="searchtype2" value="person" checked="checked">Person
<input type="radio" name="searchtype2" value="organisation">Organisation
^
这是另一种获取与查找按钮相关的已检查无线电输入类型值的方法
$(".findpersonbtn.btn").click(function(){
var value = $(this).nextAll(".contactType").first().find("input[type=radio]:checked").val();
alert(value);
});
<强> jsFiddle 强>