1

html:

<label><input type="radio" name="league" value="Bronze">Bronze</label>
<label><input type="radio" name="league" value="Silver">Silver</label>
<label><input type="radio" name="league" value="Gold">Gold</label>
<label><input type="radio" name="league" value="Platinum">Platinum</label>
<label><input type="radio" name="league" value="Diamond">Diamond</label>
<label><input type="radio" name="league" value="Master">Master</label>
<label><input type="radio" name="league" value="Grand Master">Grand Master</label>

我有一个数据库列,它将他们选择的一个保存为 VARCHAR(我应该使用其他东西吗?)。如何设置它以便选择与数据库中存储的内容一致的单选按钮?

我也可以将其更改为下拉菜单,但我仍然需要知道如何设置选定的值。

这是我尝试过的,但由于某种原因它似乎不起作用。

<?php
     $leagues = array('Bronze', 'Silver', 'Gold', 'Platinum', 'Diamond', 'Master', 'Grand Master');
     foreach ($leagues as $key=>$value) {
          $selected = ($value == $user_data['league'] ? ' selected="selected"' :  '');
          echo '<label><input type="radio" name="league"' . $selected . ' value="' . $value . '">' . $value . '</label> ';
     }
?>
4

1 回答 1

0

首先,从您的数据库中获取存储的值。您使用的是什么服务器端语言?

编辑:添加 php.ini

<?php
 $leagues = array('Bronze', 'Silver', 'Gold', 'Platinum', 'Diamond', 'Master', 'Grand Master');
 foreach ($leagues as $key=>$value) {
      $selected = ($value == $user_data['league'] ? ' checked="checked"' :  '');
      echo '<label><input type="radio" name="league"' . $selected . ' value="' . $value . '">' . $value . '</label> ';
 }
?>

<script>
var value = <? /* Your PHP code to get the stored value from the db...*/ ?>;

/* radioOptions will store the array of radio buttons.*/
var radioOptions = document.getElementsByName("league");
var i;
for (i = 0; i < radioOptions.length; i++) {
    /* Check if the value of the radio option matches the stored value.*/
    if (radioOptions[i] === value) {
        radioOptions[i].checked = true;
        /* No need to check the others.*/
        break;
    }
}    
</script>
于 2013-01-21T04:26:11.487 回答