我试图让 jquery 日期选择器在选择不同的单选按钮时进行更新。
<div style="padding-bottom: 50px;">
<label>Location: </label>
<input type="radio" name="locate" value="Internal">Internal
<input type="radio" name="locate" value="External">External
</div>
<div>
<label>Due Date: </label>
<input type="text" name="dueDate" id="dueDate" size="25" placeholder="Please Enter A Due Date" autocomplete="off" readonly="true">
</div>
jQuery 可以工作,但每次单击新的单选按钮时它不会更新 datePicker。
var locate = null;
$("input[name='locate']").click(function() {
locate = this.value;
if (locate == "Internal") {
$( "#dueDate" ).datepicker( { minDate: '-6M', maxDate: '+6M' });
alert("Internal");
} else {
$( "#dueDate" ).datepicker( { minDate: -0, maxDate: '+6M' });
alert("External");
}
});
您没有正确检索单选按钮的选中值。尝试改变你if
条件如下。
if ($("input[name='locate']:checked").val() == 'Internal'){
$( "#dueDate" ).datepicker( { minDate: '-6M', maxDate: '+6M' });
}
else {
$( "#dueDate" ).datepicker( { minDate: -0, maxDate: '+6M' });
}
更新1: Use destroy
销毁日期选择器并在单选按钮的选项更改时重新创建它。这是完整的代码。链接到工作DEMO http://jsfiddle.net/yert3kLj/
$("input[name='locate']").click(function() {
locate = this.value;
var dateField = $('#dueDate');
if ($("input[name='locate']:checked").val() == 'Internal'){
dateField.datepicker('destroy');
dateField.datepicker( { minDate: '-6M', maxDate: '+6M' });
}
else {
dateField.datepicker('destroy');
dateField.datepicker( { minDate: -0, maxDate: '+6M' });
}
});
当你选择的时候Internal
您最多可以返回 6 个月前的时间Extrenal
被选择,则从当前日期开始。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)