jquery獲取 動態表中所有的單選框值
阿新 • • 發佈:2018-12-16
HTML程式碼,此處為動態生成的表:
<table class="table table-striped table-bordered table-hover" id="testtable"> <thead align="center" style="font-weight: bold;"> <tr> <td width="100px">類別</td> <td width="150px">專案</td> <td width="350px">細則</td> <td width="200px">選項</td> <td>說明</td> </tr> </thead> <tbody id="esatable"> </tdody> </table>
JS程式碼:
//此處根據後臺的資料動態生成表資訊 function selectEsaInfo() { var id = 1; $.ajax({ type: "post", url: "../esa/tableShow.cyl", data: { category_id : id }, dataType: "json", success: function(data){ var data = data.esaList; var html = ""; html += "<tr><td rowspan='"+ data.length +"' align='center' >"; for (var i = 0; i < data.length; i++) { html += ""+ data[i].esa_category+"</td>"; html += "<td align='center'>"+ data[i].esa_project +"</td>" html += "<td>"+ data[i].esa_regulations +"</td>" html += "<td name='rd' dv='" + data[i].id + "' align='center'>" html += "<input type='radio' name='"+ data[i].id +"' value='0'/>符合" html += "<input type='radio' name='"+ data[i].id +"' value='1'/>不符合" html += "<input type='radio' name='"+ data[i].id +"' value='2'/>不適用</td>" html += "<td align='center' name='tx' tet='" + data[i].id + "'>" html += "<textarea id= '" + data[i].id + "' style='border: none;width: 200px;height:40px;'></textarea>" html += "</td></tr>" } $("#esatable").html(html); mergeCell("esatable",1,data.length,0); }, error: function(){ } }); } //此處為獲取rodio值的js function detmecSave() {//detmecSave是一個提交按鈕的點選事件 var tds = $("#testtable").find("td[name='rd']");//表id:testtable,獲取表中每行屬性裡有name=rd的行(這裡給td寫個name屬性) var arryrodio = {};//建立陣列 for(var i = 0; i < tds.length; i++) {//迴圈所有行 var radioName = tds [i].getAttribute("dv");//獲取每行td的dv屬性,為了方便區分每個rodio給一個鍵值 var radioValue = $("input[name='" + radioName + "']:checked").val();//獲取rodio值 arryrodio[radioName] = (radioValue == undefined ? null : radioValue);//向陣列新增元素 } console.log(arryrodio );//列印 }