2016-03-13 30 views
0

我有一組複選框,它具有不同的值,具體取決於所選框的組合,但是我所做的代碼不起作用,我想也許是我的& &符號的位置是不是在適當的位置,但我不知道我可以把它放在哪裏運行代碼。更改變量取決於選定的複選框集

下面是HTML代碼:

<form role="form" id="checkbox" name="checkbox" onclick="changevalue()"> 
    <input type="checkbox" id="f1">Full Front 
    <input type="checkbox" id="b1">Full Back 
    <input type="checkbox" id="f2">Pocket 
</form> 

<input type="number" id="checkboxResult"> 

這裏是腳本:

使用&的
<script type="text/javascript"> 
    function changevalue(form){ 
     var chkboxvalue = 0; 
      if (document.getElementById('f1').checked) && 
      if (document.getElementById('b1').checked) { 
       chkboxvalue = 2.2; 
      }; 

      if (document.getElementById('f2').checked) && 
      if (document.getElementById('b1').checked) { 
       chkboxvalue = 1.7; 
      }; 

     document.getElementById('checkboxResult').value = chkboxvalue; 
    } 
</script> 

回答

0

&不需要額外if

function changevalue(form){ 
    var chkboxvalue = 0; 
     if ((document.getElementById('f1').checked) && 
      (document.getElementById('b1').checked)) { 
      chkboxvalue = 2.2; 
     }; 

     if ((document.getElementById('f2').checked) && 
      (document.getElementById('b1').checked)) { 
      chkboxvalue = 1.7; 
     }; 

    document.getElementById('checkboxResult').value = chkboxvalue; 
} 

或者更一般: 做th是: if (a && b){...} ,而不是這樣的: if (a) && if (b){...}

+0

能不能請解釋一下多一點?我很困惑。 – Richelle

+0

在單個if語句中,可以使用&&(邏輯與)和|| (邏輯OR)。您最初編寫代碼的方式實際上會產生語法錯誤。 –

+0

哦,我看到了,我再次檢查它,它工作正常。非常感謝。 – Richelle