2013-12-13 37 views
0

我有一个固定成本的小表格,根据他们的运输地点和多少个托盘。根据选择框选项乘以一个值

例如英国区1至法国区1 = 20 此外英国3区法国区4 = 68

var values = [ 
     [20,25,35,40], 
     [36,42,50,56], 
     [42,56,52,68], 
     [60,70,68,72] 
    ]; 

我想要现在做到的,是如何将我乘上总价值。

因此,例如,如果用户选择了英国第1区到法国去1区即£= 20个产品

但是如果他们从选择框中选择2的总成本,现在应该是£40

这里就是我得,但我不能让它的工作

function updateValue() { 
     var fromCountry = document.querySelector('input[name="from_country"]:checked').value; 
     var toCountry = document.querySelector('input[name="to_country"]:checked').value; 

     var totalValues = values[fromCountry-1][toCountry-1]; 
     var fixValues = document.querySelector('select[name="number"]'); 
     var n = parseInt(fixValues.val(), 10); 

     if(fromCountry && toCountry) { 
      document.getElementById('cost').value = (totalValues * n); 
     } 
    } 

完全小提琴这里 - http://jsfiddle.net/barrycorrigan/ZXHbq/3/

帮助迫切需要: - )

+0

你为什么带为'document.querySelector toCountry'的'值( '..')value'和'fixValues'作为。 'document.querySelector('..')。val()'? – Tibos

+0

您的小提琴不包含要测试的整个代码。 – melancia

+0

我不确定是否诚实。我正在处理这个例子 - http://jsfiddle.net/wdm954/enKV6/我可能会离开.. –

回答

1

val()是jQuery函数。由于您不使用jQuery,请使用fixValues.value。并且不要忘记拨打电话updateValue(),这在您的小提琴中不见了。

+0

完美!谢谢.. –

0

这是我用得到它的工作代码:

function updateValue() { 
     var fromCountry = document.querySelector('input[name="from_country"]:checked').value; 
     var toCountry = document.querySelector('input[name="to_country"]:checked').value; 

     var totalValues = values[fromCountry-1][toCountry-1]; 
     var fixValues = document.querySelector('select[name="number"]'); 
     var n = parseInt(fixValues.value, 10); 

     if(fromCountry && toCountry) { 
      document.getElementById('cost').value = (totalValues * n); 
     } 
    } 
+0

任何人都不知道为什么这个计算不能在IE8中工作。我认为这只是为了处理:checked伪类。但是当我拿出这个计算不起作用[http://redhead-int.com/rednet/daily-pallet-service.php](http://redhead-int.com/rednet/daily-pallet-service。 PHP) –

相关问题