【发布时间】:2011-07-14 17:12:02
【问题描述】:
长时间聆听,第一次来电……
我在一个表单中有两个问题,第一个是“是”或“否”对单选按钮:
“您之前向我们提交过申请吗?( ) 是 ( ) 否”
...第二个是文本输入,允许使用草率的日期值:
“如果是,你是什么时候申请的?[_________ _]"
您可能已经看到我要解决的问题了……如果从单选按钮中选择“是”,我只希望第二个问题是必需的。
我已经做了一堆谷歌搜索,搜索 jQuery 的网站(不好玩也不简单),并搜索了这个非常好的网站,但我得到的最接近答案的似乎总是使用唯一的 ID 属性在无线电输入上。
遗憾的是,我遇到了无线电输入不能具有 ID 属性的情况,因为它们是由 CMS 生成的。所以,我试图在这对无线电输入上使用唯一名称属性,同时检查值为 Yes 的是否是“已选择”/“已检查”。
这是我的 HTML:
<li>
<span class="reqField">*</span> Have you filed an application with us before?<br />
<label class="radioInput"><input type="radio" name="app_prior_app" value="Yes" /> Yes</label>
<label class="radioInput"><input type="radio" name="app_prior_app" value="No" /> No</label>
</li>
<li>
<label for="app_prior_app_date">If <em>yes</em>, when did you apply?</label><br />
<input type="text" name="app_prior_app_date" value="" size="40" id="app_prior_app_date" />
</li>
这是我的 JS到目前为止:
app_prior_app: "required",
app_prior_app_date: {
required: function(element) {
return $("[name=app_prior_app]").val() == "Yes";
}
}
这自然不会按预期工作。我知道如果我可以在每个无线电输入上抛出 ID,这对我来说会更容易(我不太擅长这些东西),但我假设有一种方法可以使用只是唯一的 name 属性并确定 value “是”是否是选中的,然后(并且只有这样)继续并要求输入文本?
【问题讨论】:
标签: jquery validation dependencies radio-button