嗯,我陷入了困境并一直在头疼,试图弄清楚我的错误所在。
场景:
我有一个带有是/否答案的问题(即2个单选按钮)。当用户选择是或否时,我调用函数来.toggle()隐藏的div以显示一个链接。这很好。如果他们回过头再次检查那个是/否,它会因为.toggle()而消失。
我的问题是,如果用户点击 No(并显示了链接),然后点击 Yes,我希望显示由 No 结果展示的链接消失,反之亦然。
因此,基本上每次只显示一个链接。
我想到也许 if 语句可以解决问题,但我似乎做不对。
我的代码:
<div id="Question1">
<div>Do you kazoo?</div>
<input type="radio" ID="Q1RB1" runat="server" value="Yes" text="Yes" name="RadioGroup1"/>Yes<br />
<input type="radio" ID="Q1RB2" runat="server" value="No" text="No" name="RadioGroup1"/> No
<span id="Q1RB1Results" style="display:none"> <a href=#>Click here</a></span>
<span id="Q1RB2Results" style="display:none"> <a href=#>Click here</a></span>
</div>
我的 jQuery 代码适用于每个单独的单选按钮:
$("input[id$=Q1RB1]:radio").change(function () {
$("[id$=Q1RB1Results]").toggle();
});
$("input[id$=Q1RB2]:radio").change(function () {
$("[id$=Q1RB2Results]").toggle();
});
这是我正在尝试让其工作的 If 语句。我是不是走错了路?
if ($("input[id$=Q1RB2]").is(":checked")) {
$("input[id$=Q1RB2]:radio").change(function () {
$("[id$=Q1RB2Results]").toggle();
});
});
感谢任何想法/建议。我在Stackoverflow和互联网上尝试了许多答案,但似乎无法弄清楚我做错了什么。
更新:我在JSFiddle上放了一个样本表格和对话框。 http://jsfiddle.net/Valien/7uN6z/4/ 我尝试了这里提到的一些解决方案,但无法使它们正常工作,所以不确定我做错了什么。
$(this)
。你的代码相当于总是使单选按钮未被选中。 - Blindy