2015-12-28 155 views
0

我在Ajax/Javascript中创建了一个应该保存一些返回值的动态表格。 在每行的开始处,我希望有一列单选按钮,可用于识别特定行。 如何在表格内创建单选按钮? 感谢在动态生成的表格内创建单选按钮

这里是我的代码:

for (var i = 0; i < controller_data.length; i++) { 
    tr = $('<tr/>'); 


    // this is the row where the radio button should be 

    tr.append("<td> <input type="radio"> </td>"); 
    tr.append("<td>" + controller_data[i].id + "</td>"); 
    tr.append("<td>" + controller_data[i].question + "</td>"); 
    tr.append("<td>" + controller_data[i].image + "</td>"); 
    tr.append("<td>" + controller_data[i].answer1 + "</td>"); 
    tr.append("<td>" + controller_data[i].answer2 + "</td>"); 
    tr.append("<td>" + controller_data[i].answer3 + "</td>"); 
    tr.append("<td>" + controller_data[i].answer4 + "</td>"); 
    $('table').append(tr); 
} 
+0

确定。我设法通过脱离引号来创建它们,但它们似乎并不合作,因为它们不在表单内。 – Otonel

回答

1

否则只有两排,它看起来像这样...

 tr.append("<td><input name='question1' type='radio' value='" + controller_data[i].answer1 + "'/>"+ controller_data[i].answer1 + "</td>"); 
    tr.append("<td><input name='question1' type='radio' value='" + controller_data[i].answer2 + "'/>"+ controller_data[i].answer2 + "</td>"); 

它是单选按钮名称组RAIDO按钮。同样,如你所说,你在单引号和双引号之间回到第四位,你不必做太多的转义。 此外,我在价值的答案,但如果你有一个答案ID,这实际上是放在那里的价值。

+0

谢谢。我只是添加了名称='radiobutton',现在他们一起工作。如果我添加一个将保存[i]值的ID,我能否知道我选择了哪个单选按钮? – Otonel

+0

原因我懒得打出来,看看这里http://stackoverflow.com/questions/9618504/get-radio-button-value-with-javascript – Bindrid

0

你可以这样做。

只是删除double quotessingle quotes取代它,否则将把radio作为变量

for (var i = 0; i < controller_data.length; i++) { 
tr = $('<tr/>'); 


// this is the row where the radio button should be 
//CHANGE BELOW 
tr.append("<td> <input type='radio'> </td>"); 
tr.append("<td>" + controller_data[i].id + "</td>"); 
tr.append("<td>" + controller_data[i].question + "</td>"); 
tr.append("<td>" + controller_data[i].image + "</td>"); 
tr.append("<td>" + controller_data[i].answer1 + "</td>"); 
tr.append("<td>" + controller_data[i].answer2 + "</td>"); 
tr.append("<td>" + controller_data[i].answer3 + "</td>"); 
tr.append("<td>" + controller_data[i].answer4 + "</td>"); 
$('table').append(tr); 

}

相关问题