2017-10-11 56 views
1

我有一個小問題。 最後一些代碼正在工作,但只有第一個可用的複選框。 它應該提交表單,但是隻能用一個。Javascript複選框onclick只與頂部

使用的JavaScript:

<script type=\"text/javascript\"> 
    $(document).ready(function() { 
     $('#opties').on('click', function(){ 
       if($(this).is(':checked')) { 
         $('#frm').submit(); 
        } 
     }); 
    }); 
</script> 

使用PHP複選框表單項

<li class="list-group-item"><input type="checkbox" id="opties" name="opties_in[]" value="2240" checked > Item 2240</li> 

<li class="list-group-item list-group-item-info"><input type="checkbox" id="opties" name="opties_in[]" value="2251" >Item 2251</li> 

<li class="list-group-item"><input type="checkbox" id="opties" name="opties_in[]" value="2252" >Item 2252</li> 

<li class="list-group-item list-group-item-info"><input type="checkbox" id="opties" name="opties_in[]" value="2250" >Item 2250</li> 

第二個問題,供以後;-),是它需要做的onchange做的動作,而不是點擊。但這應該很容易。

+0

'id'總是唯一的,在你的情況下,所有的複選框都有相同的ID –

+0

哪裏是PHP的一部分? – Epodax

回答

0

你應該使用,而不是一個 '身份證' '類' 試圖通過類= 「opties」 修改ID = 「opties」

$('.opties').on('click', function(){ 
       if($(this).is(':checked')) { 
         $('#frm').submit(); 
        } 
     }); 
0

你的HTML是無效的。使用a validator

一個id必須是唯一在文檔中。

要標識一組相關元素,請使用class屬性和類別選擇器(以.開頭)。


複選框不是人們期望提交表單的UI控件。您應該強烈考慮使用提交按鈕。

例如

<button name="opties_in[2240]" value="turn off"> Item 2240 </button> 

這將消除對JavaScript的需求。