私は、RadioButtonList の SelectedValue を Javascript で決定するさまざまな方法を試しましたが、喜びはありませんでした。次に、Web ページの HTML を見て、ASP.NET が RadioButtonList コントロールを単一列の HTML テーブルとして Web ページにレンダリングすることに気付きました。
<table id="rdolst" border="0">
<tr>
<td><input id="rdolst_0" type="radio" name="rdolst" value="Option 1" /><label for="rdolst_0">Option 1</label></td>
</tr>
<tr>
<td><input id="rdolst_1" type="radio" name="rdolst" value="Option 2" /><label for="rdolst_1">Option 2</label></td>
</tr>
</table>
Javascript を介して RadioButtonList の個々の ListItem にアクセスするには、関連する行のセルの子コントロール (Javascript ではノードと呼ばれる) 内でそれを参照する必要があります。各 ListItem は、その行の最初の (ゼロ) セルの最初の (ゼロ) 要素としてレンダリングされます。
この例では、RadioButtonList をループして SelectedValue を表示します。
var pos, rdolst;
for (pos = 0; pos < rdolst.rows.length; pos++) {
if (rdolst.rows[pos].cells[0].childNodes[0].checked) {
alert(rdolst.rows[pos].cells[0].childNodes[0].value);
//^ Returns value of selected RadioButton
}
}
RadioButtonList の最後の項目を選択するには、次のようにします。
rdolst.rows[rdolst.rows.length - 1].cells[0].childNodes[0].checked = true;
したがって、Javascript で RadioButtonList を操作することは、通常のテーブルを操作するのと非常によく似ています。私が言うように、私はそこにある他のほとんどのソリューションを試しましたが、これが私のために働く唯一のものです.