0

以下に示すように、ラジオボタンのグループがあります。ページの初期ロード時にチェックされたデフォルトのラジオボタンがプラスチックである状況を想定しています。以下のコードは、選択したラジオ ボタンを保持するだけです。

<div id="material">
<input type="radio"  name="materials" value="glass" style="vertical-align: middle"
  onchange="this.form.submit()"
  <?php if(isset($_POST['materials'])){ if($_POST['materials'] == 'glass') {echo "checked";}} ?>
  />
<label for="material">Glass</label> <br/>

<input type="radio"  name="materials"  style="vertical-align: middle" value="plastic"
  onchange="this.form.submit()"
  <?php if(isset($_POST['materials'])){ if($_POST['materials'] == 'plastic') {echo "checked";}} ?>
/>
<label for="material" >Plastic (Organic)</label>
</div>
4

3 に答える 3

1

ラジオ ボタンから削除onchange="this.form.submit()"し、これをページ ヘッダーのスクリプト タグの間に追加します。

<script>
window.onload = function() {
    // when the form is submitted
    document.forms[0].onsubmit = function() {
        // get all radio buttons with name = materials
        var radios = document.getElementsByName('materials');
        // for each radio button
        for(i=0; i<radios.length; i++) {
            // uncheck radio buttons
            radios[i].checked = false;
        }
    };
};
</script>
于 2013-04-22T08:43:50.067 に答える
0

「checked」を「checked="checked"」に変更してみてください

于 2013-04-22T08:43:29.043 に答える
0

以下のコードを試してみてください。目的の変更が行われています

<div id="material">
    <input type="radio"  name="materials" value="glass" style="vertical-align: middle"  onchange="this.form.submit()" <?php if(isset($_POST['materials'])){ if($_POST['materials'] == 'glass') {echo "checked";}} ?>/>
     <label for="material">Glass</label> <br/>

    <input type="radio" checked="checked"   name="materials"  style="vertical-align: middle"  value="plastic"  onchange="this.form.submit()"  <?php if(isset($_POST['materials'])){ if($_POST['materials'] == 'plastic') {echo "checked";}} ?>/>
    <label for="material" >Plastic (Organic)</label>
    </div>

更新しました

<form method="post" >
 <div id="material">
 <?php if(isset($_POST['materials'])) {
    if($_POST['materials'] == 'glass'){
    ?>
<input type="radio" checked="checked" name="materials" value="glass" style="vertical-align: middle"  onchange="this.form.submit()" <?php if(isset($_POST['materials'])){ if($_POST['materials'] == 'glass') {echo "checked";}} ?>/>
 <label for="material">Glass</label> <br/>
 <input type="radio"   name="materials"  style="vertical-align: middle"  value="plastic"  onchange="this.form.submit()"  <?php if(isset($_POST['materials'])){ if($_POST['materials'] == 'plastic') {echo "checked";}} ?>/>
<label for="material" >Plastic (Organic)</label>
 <?php } 
 else { ?>
  <input type="radio"  name="materials" value="glass" style="vertical-align: middle"  onchange="this.form.submit()" <?php if(isset($_POST['materials'])){ if($_POST['materials'] == 'glass') {echo "checked";}} ?>/>
  <label for="material">Glass</label> <br/>
 <input type="radio" checked="checked"  name="materials"  style="vertical-align: middle"  value="plastic"  onchange="this.form.submit()"  <?php if(isset($_POST['materials'])){ if($_POST['materials'] == 'plastic') {echo "checked";}} ?>/>
 <label for="material" >Plastic (Organic)</label>
 <?php } 
 } else { ?>
 <input type="radio"  name="materials" value="glass" style="vertical-align: middle"  onchange="this.form.submit()" <?php if(isset($_POST['materials'])){ if($_POST['materials'] == 'glass') {echo "checked";}} ?>/>
 <label for="material">Glass</label> <br/>
<input type="radio" checked="checked"  name="materials"  style="vertical-align: middle"  value="plastic"  onchange="this.form.submit()"  <?php if(isset($_POST['materials'])){ if($_POST['materials'] == 'plastic') {echo "checked";}} ?>/>
<label for="material" >Plastic (Organic)</label>
<?php } ?>
</div>

<input type="submit" name="submit">
</form>
于 2013-04-22T08:45:01.803 に答える