가격표를 만들기 위해 노력 중이며 파싱 할 데이터가 많습니다. 모든 데이터가 다르고 공식이 없습니다. 아래는 내가 작업하고있는 스 니펫입니다. 이 모든 데이터를 저장하고 액세스하는 더 좋은 방법이 있는지 궁금합니다.많은 데이터를 저장하는 더 나은 방법
function getPrice(number) {
totalPrice = 0;
for (var t = 2; t <= number; t++) {
var ipp = 'cab' + (t - 1) + 'Size';
var cabP = 'p' + (t - 1);
var cabStyle = document.getElementById('cab' + (t - 1)).value;
var cabs = document.getElementById(ipp);
switch (cabStyle) {
case 'b1':
if (cabs.value === "") {
totalPrice = totalPrice + 0;
document.getElementById(ipp).style.border = "1px solid red";
} else if (cabs.value <= 12) {
totalPrice = totalPrice + 111;
document.getElementById(cabP).innerHTML = " $111";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 12 && cabs.value <= 13.5) {
totalPrice = totalPrice + 113;
document.getElementById(cabP).innerHTML = " $113";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 13.5 && cabs.value <= 15) {
totalPrice = totalPrice + 116;
document.getElementById(cabP).innerHTML = " $116";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 15 && cabs.value <= 16.5) {
totalPrice = totalPrice + 118;
document.getElementById(cabP).innerHTML = " $118";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 16.5 && cabs.value <= 18) {
totalPrice = totalPrice + 120;
document.getElementById(cabP).innerHTML = " $120";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 18 && cabs.value <= 19.5) {
totalPrice = totalPrice + 122;
document.getElementById(cabP).innerHTML = " $122";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 19.5 && cabs.value <= 21) {
totalPrice = totalPrice + 124;
document.getElementById(cabP).innerHTML = " $124";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 21 && cabs.value <= 22.5) {
totalPrice = totalPrice + 126;
document.getElementById(cabP).innerHTML = " $126";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 22.5 && cabs.value <= 24) {
totalPrice = totalPrice + 141;
document.getElementById(cabP).innerHTML = " $141";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 24 && cabs.value <= 27) {
totalPrice = totalPrice + 146;
document.getElementById(cabP).innerHTML = " $146";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 27 && cabs.value <= 30) {
totalPrice = totalPrice + 152;
document.getElementById(cabP).innerHTML = " $152";
document.getElementById(ipp).style.border = "";
}
break;
case 'b2':
if (cabs.value === "") {
totalPrice = totalPrice + 0;
document.getElementById(ipp).style.border = "1px solid red";
} else if (cabs.value <= 27) {
totalPrice = totalPrice + 167;
document.getElementById(cabP).innerHTML = " $167";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 27 && cabs.value <= 30) {
totalPrice = totalPrice + 173;
document.getElementById(cabP).innerHTML = " $173";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 30 && cabs.value <= 33) {
totalPrice = totalPrice + 178;
document.getElementById(cabP).innerHTML = " $178";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 33 && cabs.value <= 36) {
totalPrice = totalPrice + 183;
document.getElementById(cabP).innerHTML = " $183";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 36 && cabs.value <= 39) {
totalPrice = totalPrice + 194;
document.getElementById(cabP).innerHTML = " $194";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 39 && cabs.value <= 42) {
totalPrice = totalPrice + 199;
document.getElementById(cabP).innerHTML = " $199";
document.getElementById(ipp).style.border = "";
} else if (cabs.value > 42 && cabs.value <= 45) {
totalPrice = totalPrice + 205;
document.getElementById(cabP).innerHTML = " $205";
document.getElementById(ipp).style.border = "";
}
break;
여기서 컨텍스트 란 무엇입니까? 당신은 HTML에서 가격을 어떻게 든 추출하고 있습니까? 'number'와'cabStyle'은 무엇입니까? –
'number'는 버튼 기능의 카운터 일 뿐이며'cabStyle'은 옵션 목록의 스타일 일뿐입니다. – punksux