如何通过jquery检查与单选按钮关联的值?
我的网页上有两个单选按钮,分别是id(#ah)和id(#esp) 1.当用户单击esp单选按钮时,应显示一个带有类(auth_type)的表格行。其中还有两个单选按钮,分别为idno和idyes 如果用户单击yes,则应显示带有class(auth_other)的表行,如果选择了no,则该行应消失 2.当用户单击ah单选按钮时,class(auth\u type)的表格行应消失 现在一切正常,问题是当用户选择了否并单击了ah单选按钮时,出现了类为auth_other的表格行,这不应该出现 我尝试处理它,并在esp单选按钮的jquery代码中添加了以下行如何通过jquery检查与单选按钮关联的值?,jquery,html,jquery-selectors,dhtml,Jquery,Html,Jquery Selectors,Dhtml,我的网页上有两个单选按钮,分别是id(#ah)和id(#esp) 1.当用户单击esp单选按钮时,应显示一个带有类(auth_type)的表格行。其中还有两个单选按钮,分别为idno和idyes 如果用户单击yes,则应显示带有class(auth_other)的表行,如果选择了no,则该行应消失 2.当用户单击ah单选按钮时,class(auth\u type)的表格行应消失 现在一切正常,问题是当用户选择了否并单击了ah单选按钮时,出现了类为auth_other的表格行,这不应该出现 我尝试
$(document).ready(function(){
$("#esp").click(function(){
$(".auth_type").slideDown("normal");
$("#no").click(function(){
$(".auth_other").slideUp("normal");
});
$("#yes").click(function(){
$(".auth_other").slideDown("normal");
});
});
$("#ah").click(function(){
$(".auth_type").slideUp("normal");
});
});
但它不起作用
我认为当用户点击no和ah一样时,我应该让它强制出现
是否有任何机制可以强制在用户单击“ah”或从“ah”返回“esp”时,在“yes”按钮上默认选中类为“auth\u type”的单选按钮。我认为这可能解决问题。
我是jquery新手,但使用过javascript,所以如果有人能告诉我上述jquery代码是否有问题
整个HTML代码非常长,因此只显示类“auth_type”的HTML。
如果需要,我也会为类“auth_other”添加代码
。。
....
应用身份验证
对
不
...
...
您实际上不需要特别关注#yes
和#no
按钮。您只需说“当单击.auth\u type
中的一个单选按钮时,隐藏或显示.auth\u other
行,具体取决于它是两个按钮中的哪一个”。这就是该代码的作用:
..
....
<tr class="auth_type" style="display:none">
<td width="400" height="40">Apply Authentication</td>
<td>
<table width="100%">
<tr>
<td style="text-align:center">
<input type="radio" name="auth_opt" value="y" id="yes" align="left" checked="checked" />yes
</td>
<td style="text-align:center">
<input type="radio" name="auth_opt" value="n" id="no" align="right"/>no
</td>
</tr>
</table>
</td>
</tr>
...
...
此外,您还应不要将附加单击事件处理程序的代码放入#esp
单击处理程序本身中:
$(".auth_type input:radio").click(function() {
if ($(this).val() == "y") {
$(".auth_other").slideDown("normal");
}
else {
$(".auth_other").slideUp("normal");
}
});
根据您的描述,当选择了#ah
收音机时,您可能还想隐藏.auth_other
(它可能在早期用户交互中显示):
Thanx但您描述的最后一个不是我想要的。每当选择\ah
收音机时,我都需要显示.auth\u other
,除非\no
被激活,这是一个主要问题,其余一切正常。还有一件事我想要的是,当用户点击返回\esp
(假设当前\ah
处于活动状态)时,默认情况下\yes
应该处于活动状态。@UditGupta:这是一件非常混乱的事情——所以要使出现auth\u other
,您必须首先选择\esp
(和\yes
),但是当您取消选择#esp
并选择#ah
时,.auth\u other
仍然可见?没有任何意义。我同意实际上这是一个ipsec前端实现。。ah(身份验证头)和esp(封装的安全有效负载)现在默认情况下激活ah
,因此.auth\u other
(用于身份验证的选项n字段)。选择esp后,.auth\u type
显示询问何时需要身份验证(在esp中身份验证是可选的,而必须进行加密)。如果是,则.auth_other
会出现或消失。如果有意义的话。我只是在寻找答案,如果有人能告诉我,如果用户单击,我可以使\yes
处于活动状态。啊
。OKKKKKKKKKK…我得到了答案。这就是任何人都可以通过jquery来检查或取消选中单选按钮的方式代码<代码>变量预设值=“y”代码>$([name=auth_opt]”)。过滤器([value=“+presetValue+”])。属性(“选中”、“选中”)代码>现在,当选择了#esp
时,每次都将默认选中#yes
按钮。无论如何,谢谢你的宝贵建议。
$(".auth_type input:radio").click(function() {
if ($(this).val() == "y") {
$(".auth_other").slideDown("normal");
}
else {
$(".auth_other").slideUp("normal");
}
});
$("#esp").click(function(){
$(".auth_type").slideDown("normal");
// NOT IN HERE!
});
// OUT HERE IS CORRECT
$(".auth_type input:radio").click(function() {
if ($(this).val() == "y") {
$(".auth_other").slideDown("normal");
}
else {
$(".auth_other").slideUp("normal");
}
});
$("#ah").click(function(){
$(".auth_type").add(".auth_other").slideUp("normal");
});