2017-03-07 45 views
0

我使用java腳本獲取我的html表的值。然後我想將選中的複選框值傳回給我的服務器。但是下面的腳本函數總是給出一個0值的選擇數組。每個檢查項目的輸出總是相同的項目。從複選框中選擇選中的值

function find() { 

var dataObject = {}; 
var selected = []; 
var i; 

$('input[type="checkbox"]:checked').each(function() { 
    selected.push($(this).val()); 
    }); 

    for (var i = 0, len = selected.length; i < len; i++) { 
    dataObject['id'+(i+1)] = (selected[i]); 

} 
+0

你可能沒有'值'input type ='checkbox''的屬性另外,你期望得到什麼? –

+0

您可能想要放置一個斷點並檢查'$('input [type =「checkbox」]:checked')'爲空還是'selected'爲空。 –

+0

向我們展示您的html。此外,我認爲你可能在你的'for'中有一些錯誤,你使用的是逗號而不是「;」 – happymacarts

回答

0

不知道,但嘗試這一個;)

function find() { 

    var dataObject = {}; 
    var selected = []; 
    var i; 

    $('input[type="checkbox"]:checked').each(function (index, value) { 
     selected.push(value); 
     }); 

     for (var i = 0, len = selected.length; i < len; i++) { 
     dataObject['id'+(i+1)] = (selected[i]); 

    } 
0

通過與$('input[type="checkbox"]:checked')選擇您checboxes您已經選擇只檢查所以價值顯然是選中的複選框。

複選框有兩種狀態:選中或不選,checked屬性反映的不是value屬性。

可以設定。但是屬性的值您可以在POST請求使用它,但你必須將其設置第一個else複選框的value屬性的值始終爲1