0

我有一个数据库,其中一个带有 JSON 的 php 将值发布到我的应用程序。我的愿望是将值填充到原始用户生成的输入中。

我可以使用这个命令来填充文本输入:

document.getElementById("value1").value=item.value1;

但是我如何将值返回到无线电输入?

4

1 回答 1

1

像这样设置checked属性:

document.getElementById('radioId').checked = 'checked';

相反,您可以删除该属性以取消选中它:

document.getElementById('radioId').removeAttribute('checked'); 

写例子:

<input id="maleRadioBox" type="radio" name="sex" value="male">Male<br>
<input id="femaleRadioBox" type="radio" name="sex" value="female" checked>Female</input>
[...]
if( values.maleChecked )
   document.getElementById('maleRadioBox').checked = 'checked';
else
   document.getElementById('maleRadioBox').removeAttribute('checked');
if( values.femaleChecked )
   document.getElementById('femaleRadioBox').checked = 'checked';
else
   document.getElementById('femaleRadioBox').removeAttribute('checked');

阅读示例:

<input id="maleRadioBox" type="radio" name="sex" value="male" checked>Male<br>
<input id="femaleRadioBox" type="radio" name="sex" value="female">Female</input>
[...]
if( document.getElementById('maleRadioBox').hasAttribute('checked') )
   values.maleChecked = 'checked';
// or maybe values.maleChecked = document.getElementById('maleRadioBox').hasAttribute('checked');
if( document.getElementById('femaleRadioBox').hasAttribute('checked') )
   values.femaleChecked = 'checked';
// or maybe values.femaleChecked = document.getElementById('femaleRadioBox').hasAttribute('checked');

您总是可以创建一个函数来简化它:

function updateRadioInput( id, checked ) {
  if( checked )
    document.getElementById( id ).checked = 'checked';
  else
    document.getElementById( id ).removeAttribute('checked');
}

updateRadioInput( 'maleChecked', values.isMaleChecked );
updateRadioInput( 'femaleChecked', values.isFemaleChecked );
// etc...
于 2013-05-31T00:59:31.327 回答