是否可以更改所选数据的值?
因此,当他们选择10月份时,它会提交value =“10”,但必须更改为value =“9”。
这可能吗?
我正在使用以下代码:
<script type='text/javascript'>
$(window).load(function(){
$(".date_year").datepicker({
showOn: 'button',
//buttonImage: "calendar_icon.png",
buttonText: 'Cal',
buttonImageOnly: false,
showAnim: 'fadeIn',
dateFormat: 'dd/mm/yy',
onClose: function (dateText, picker) {
dateArr = dateText.split('/');
$(this).siblings('.date_month').val(dateArr[1]);
$(this).siblings('.date_day').val(dateArr[0]);
$(this).val(dateArr[2]);
}
});
});>
</script>
我的HTML是:
<div class="date-picker">
<label for="preferredDate">Arrival</label>
<input type="text" class="date_day" name="day_a" />/
<input type="text" class="date_month" name="month_a" />/
<input type="text" class="date_year" name="year_a" />
</div>
<div class="date-picker">
<label for="preferredDate">Departure</label>
<input type="text" class="date_day" name="day_d" />/
<input type="text" class="date_month" name="month_d" />/
<input type="text" class="date_year" name="year_d"/>
</div>
答案 0 :(得分:1)
你已经使用了一个修改用户选择日期的功能,我不确定你是自己编写的还是从某个地方获得的,但让我解释一下:
// when the user is done picking the date, this function runs
onClose: function (dateText, picker) {
//the date is split into day, month year (by taking the pieces between /'s)
dateArr = dateText.split('/');
// the second part of the split date string is the month, put it in the .date_month box
$(this).siblings('.date_month').val(dateArr[1]);
// same with the day and year respectively
$(this).siblings('.date_day').val(dateArr[0]);
$(this).val(dateArr[2]);
}
在您将日期放入框中的位置,您可以添加一些额外的脚本。将用.date_month
值设置的行替换为:
var month = dateArr[1];
var newMonth = month - 1; //or whatever changes you want to make to the month
$(this).siblings('.date_month').val(newMonth);
当然,您可以在短时间内完成:
$(this).siblings('.date_month').val(newMonth - 1);
我将其拆分以更清楚地显示发生了什么,并且还应该看到在newMonth
部分,如果您想要在实际将其放入月份字段之前,您将能够进行更多计算