2017-03-07 52 views
0

這是我從數據庫表中獲取一些數據並將複選框放在一頁上的函數。將複選框值傳遞給服務器

function myfunction() { 

    var dataObject = {}; 

    $.ajax({ 
    url: "http://localhost:45217/api/Symptom/LoadSymptom", 
    type: "GET", 
    data: JSON.stringify(dataObject), 
    contentType: "application/json", 
    success: function (response) { 

     for (var i = 0; i < response.length; i++) { 
     tr = $('<tr/>'); 
     tr.append("<td>" + response[i].SymptomName + "</td>"); 
     tr.append("<td>" + "<input type=checkbox tr.id=" + i + " value=" + i + ">" + "</td>"); 

     $('table').append(tr); 
     } 
    } 
    }); 

} 

如何將此複選框值傳遞給服務器。

+0

第一檢查代碼 - 'tr.append( 「​​」+ 「」 + 「」); ' 它應該是'id'而不是'tr.id'。這將是一個問題。你也可以詳細說明你的問題嗎? –

回答

0

爲了使Ajax請求的每次用戶點擊複選框,你可以做,在2 ways-

定義功能要執行onClick-

function someFn() { // perform some Ajax request }

方法1:

for (var i = 0; i < response.length; i++) { 
    tr = $('<tr/>'); 
    tr.append("<td>" + response[i].SymptomName + "</td>"); 
    tr.append('<td><input type=checkbox id="' + i + '" value=' + i + ' onclick="someFn()"></td>'); 

    $('table').append(tr); 
    } 

方法2:

$('input[id^="symptom_chkbox_"]').on('click', function(){ // perform some Ajax request })

for (var i = 0; i < response.length; i++) { 
    tr = $('<tr/>'); 
    tr.append("<td>" + response[i].SymptomName + "</td>"); 
    tr.append('<td><input type="checkbox" id="symptom_chkbox_' + i + '" value=' + i + '></td>'); 

    $('table').append(tr); 
    }