1
我已經用json-data填充了我的選擇下拉菜單。選擇的內容取決於之前選擇和廣播的選擇。當我決定選擇另一個單選按鈕時,是否可以「重置」所有選擇?'重新選擇'取決於其他選擇(jQuery)
我使用下面的代碼:
function changeCustomerType(value) {
selectedCustomerType = value;
if(typeof dateTypeCol === 'undefined') {
dateTypeCol = temp[value];
console.log(dateTypeCol);
} else {
dateTypeCol = '';
yearCol = '';
console.log(yearCol);
dateTypeCol = temp[value];
console.log(dateTypeCol);
}
}
function changeDateType(value) {
console.log(selectedCustomerType);
$(dateFieldset).show();
yearLabel.show();
selectedDateType = value;
switch(selectedDateType) {
case 'Weekend':
$(yearSelect).selectedIndex = 0;
$(monthSelect).hide();
$(dateSelect).hide();
break;
case 'Midweek':
$(yearSelect).selectedIndex = 0;
$(monthSelect).hide();
$(dateSelect).hide();
break;
case 'Week':
$(yearSelect).selectedIndex = 0;
$(monthSelect).hide();
$(dateSelect).hide();
break
}
if(typeof yearCol !== 'undefined') {
yearCol = '';
$(yearSelect).empty();
yearCol = dateTypeCol[value];
console.log(yearCol);
$.each(yearCol, function(key, value) {
$(yearSelect).append('<option value=' + value + '>' + key + '</option>');
});
} else {
yearCol = '';
$(yearSelect).empty();
yearCol = dateTypeCol[value];
console.log(yearCol);
$(yearSelect).append('<option value></option>');
$.each(yearCol, function(key, value) {
$(yearSelect).append('<option value=' + value + '>' + key + '</option>');
});
}
}
function getMonths(year) {
selectedYear = year;
$(dateSelect).hide();
$(monthSelect).show();
if(typeof monthCol === 'undefined') {
monthCol = yearCol[year];
console.log(monthCol);
$.each(monthCol, function(key, value) {
$(monthSelect).append('<option value=' + value + '>' + key + '</option>');
});
} else {
monthCol = '';
$(monthSelect).empty();
monthCol = yearCol[year];
console.log(monthCol);
$(monthSelect).append('<option value></option>');
$.each(monthCol, function(key, value) {
$(monthSelect).append('<option value=' + value + '>' + key + '</option>');
});
}
}
function getDates(month) {
switch(selectedDateType) {
case 'Weekend':
$(dateSelect).show();
break;
case 'Midweek':
$(dateSelect).show();
break;
case 'Week':
$(dateSelect).show();
break
}
//console.log(selectedCustomerType, selectedDateType, selectedYear, month);
if(typeof dateCol === 'undefined') {
dateCol = monthCol[month];
console.log(dateCol);
$.each(dateCol, function(key, value) {
console.log(value);
$.each(value, function(key1, value1) {
if(key1 == 'id') {
id = value1;
};
});
$.each(value, function(key2, value2) {
if(key2 == 'startDate') {
$(dateSelect).append('<option value=' + id + '>' + value2 + '</option>');
};
});
});
} else {
dateCol = '';
$(dateSelect).empty();
$.each(dateCol, function(key, value) {
console.log(value);
$.each(value, function(key1, value1) {
if(key1 == 'id') {
id = value1;
};
});
$(monthSelect).append('<option value></option>');
$.each(value, function(key2, value2) {
if(key2 == 'startDate') {
$(dateSelect).append('<option value=' + id + '>' + value2 + '</option>');
};
});
});
}
}
現狀:
這是一個有點亂了,需要在此之後,以nicen它一點。 如果需要其他信息,請詢問!這是新的。 在此先感謝!
PS我知道if語句真的是多餘的,需要加以改進,只是一個快速修復。 – Hees1989
您是否有任何收聽者設置了收音機的變化事件?類似這樣:$(「input [name ='radio']」)。change(function(){})在客戶類型初始化後? –
'customerType'和'dateType'單選按鈕上的onclick和onchange。如果這就是你的意思? – Hees1989