我正在尝试获取jQuery验证插件,以便在radio.is(“:checked”)时将文本类型输入设置为必需...我知道以下代码在jsFiddle上运行...但是它不能在我工作的内部网中工作......是否有以下替代方案?:
$(document).ready(function () {
$("#myForm").validate({
rules: {
t1: {
required: true,
minlength: 5
},
t2: {
required: function (element) {
if($('#rad2').is(":checked"))
{
return true;
}
else
{
return false;
}
},
minlength:5
}
},
messages: {
t1: {
required: "Enter t1",
minlength: "min is 5"
},
t2: {
required: "Required t2",
minlength: "min is 5"
}
}
})
})
<form id="myForm">
<label><input type="radio" id="rad1" name="radio">Rad 1</label>
<label><input type="radio" id="rad2" name="radio">Rad 2</label>
<input type="text" name="t1" maxlength="10">
<input type="text" name="t2" maxlength="10">
<input type="submit" value="submit">
</form>
required: $('#rad1').is(":checked")
因为我相信这会给我一个简单的真/假..也没有用。我可能运气不好,但验证插件的其余部分仍然有效,所以可能还有另外一种方法。
答案 0 :(得分:1)
如果您正在运行jQuery verson&gt; 1.6,正确的方法是:
if ($("#rad2").prop("checked", true))
return true;
return false;
如果jQuery版本是1.6或更低:
if ($("#rad2").attr("checked", "checked"))
答案 1 :(得分:0)
谢谢大家回复我的问题...我确实找到了解决方案,但我并不完全理解它,但这可能与我公司的基础架构设置方式有关...我最终在验证函数之前创建了一个变量:
var ths = this;
&#13;
并用它来选择我的单选按钮。出于某种原因,试图通过正常手段进行选择并不起作用。对不起这个愚蠢的问题,但我非常感谢你的帮助。
谢谢