Факты:
$("#datepicker").datepicker("setDate", date)
следует использовать для установки «выбранная дата». В качестве побочного эффекта он также изменит «месяц показа». но использовать его только для установки «месяца показа» не является хорошей практикой. $('#datepicker .ui-datepicker-prev').click()
и $('#datepicker
.ui-datepicker-next').click()
следует использовать для установки «месяца показа» и у него нет побочных эффектов. Но имейте это в виду, это медленно, если вы установите «показательные месяцы» на несколько лет. Исходя из фактов, вот решение:
var currentDate = new Date ();
var currentMonth = new Date (currentDate.getFullYear(), currentDate.getMonth(), 1);
//Keep currentMonth sync with "display month"
$("#datepicker").datepicker({
onChangeMonthYear: function (year, month, inst) {
currentMonth = new Date(year, month - 1, 1);
//JavaScript used 0...11 for months. Jquery UI used 1...12 for months.
},
});
function ChangeMonth(month)
{
while (currentMonth < month) {
$('#datepicker .ui-datepicker-next').click();
};
while (currentMonth > month) {
$('#datepicker .ui-datepicker-prev').click();
};
};
Вы можете использовать expand.grid()
для комбинации измерений и as.vector
для получения данных в виде вектора.
Обратите внимание на порядок размеров!
dim1 <- c('a', 'b')
dim2 <- c('a', 'b', 'c')
dim3 <- c('a', 'b', 'c', 'd')
data <- array(1:24, c(2,3,4), dimnames = list(dim1, dim2, dim3))
data
cbind(expand.grid(dim1, dim2, dim3), val = as.vector(data))