Налоги в зависимости от государства

  • Автор темы I AM
  • Обновлено
  • 12, May 2024
  • #1
Привет, У меня есть форма с раскрывающимся меню с идентификатором #state.

Я хотел бы сделать заявление IF, в котором говорится, что если выбранным штатом был Нью-Йорк, var Tax5 = 1,05;. Все остальное будет var Tax15 = 1,15;. Как я могу это сделать? Ниже приведен код.

  
 var tax15 = 1.15;
 var tax5 = 1.05;

 var qty = $("#qty").val();
 var price = parseFloat(data.replace("$", ""));
 var shipping = parseFloat(data2.replace("$", ""));
 if(!shipping){ shipping = 0; }
 if($('#store_pickup').prop("checked") == true){
 var shipping = 0;
 console.log('check'); 
 }
 $("#shippinginput").val(shipping.toFixed(2));
 $("#subtotal").html("$"+(price*qty).toFixed(2));
 $("#shipping").html("$"+(shipping*qty).toFixed(2));
 $("#tax").html("$"+(((price+shipping)*qty)*tax5).toFixed(2));
 $("#total2").html("$"+((price+shipping)*qty).toFixed(2));
 $("#cardSubmitBtn").val('BUY NOW $'+((price+shipping)*qty).toFixed(2));


Код (JavaScript):

I AM


Рег
23 Jul, 2011

Тем
403760

Постов
400028

Баллов
2418908
  • 28, May 2024
  • #2
Что-то вроде ниже....

 <script>
 var tax = 1.15;
 document.getElementById('state').addEventListener('change',function(){
 if(this.value === 'NY')
 tax = 1.05;
 else
 tax = 1.15;
 },false);

var qty = $("#qty").val();
var price = parseFloat(data.replace("$", ""));
var shipping = parseFloat(data2.replace("$", ""));
if(!shipping){ shipping = 0; }
if($('#store_pickup').prop("checked") == true){
var shipping = 0;
console.log('check');
}
$("#shippinginput").val(shipping.toFixed(2));
$("#subtotal").html("$"+(price*qty).toFixed(2));
$("#shipping").html("$"+(shipping*qty).toFixed(2));
$("#tax").html("$"+(((price+shipping)*qty)*tax).toFixed(2));
$("#total2").html("$"+((price+shipping)*qty).toFixed(2));
$("#cardSubmitBtn").val('BUY NOW $'+((price+shipping)*qty).toFixed(2));
</script>


HTML: хотя в чистом JavaScript:

 <select id="state"> <option value="AL">alabama</option> <option value="NY">new york</option> <option value="CO">colorado</option> </select>


Код (JavaScript):
 

Mserge


Рег
01 Jan, 2011

Тем
63

Постов
196

Баллов
561
  • 08, Jun 2024
  • #3
 
switch(this.value){
 'NY':
 'PA':
 tax = 1.05;
 break;
 default:
 tax = 1.15;
}


Code (JavaScript):

should be okay I think -- what's repeating?

Perhaps to use switch statement?

 if(this.value === 'NY' || this.value === 'PA' || ...)
 tax = 1.05;
 else
 tax = 1.15;


Код (JavaScript):
 

Haberman


Рег
22 Aug, 2012

Тем
65

Постов
191

Баллов
546
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно