5 に答える
3
いいえ。
複数のオプションが同じ値を持つことができ、(multiple
属性が設定されている場合) 複数のオプションを同時に選択できるため、値を指定する属性を持つことは現実的ではありません。
于 2012-05-03T12:42:00.377 に答える
3
これを指定するように要素を変更することはできません<select>
。これは HTML 仕様の一部ではありません。あなたができることは、各option
要素にを与えてid
から、Javascript を使用して正しいoption
要素を として設定することselected
です。PHP では、スクリプト スニペットを適切な場所に出力して、ブラウザーで実行できるようにする必要があります。
例えば
<option value="7ft - 213cm" label="7ft - 213cm" id="s23">7ft - 213cm</option>
...
<script>
document.getElementById("s23").selected=true
</script>
于 2012-05-03T12:46:12.437 に答える
3
すべての項目を配列に入れ、for (または foreach) ループでリストを動的に生成できます。次に、ループ変数が値と等しいかどうかをこのループで確認し、等しい場合は、選択した属性を割り当てます。
このようなもの:
<select name="height" id="height">
<option value="" label="Select">Select Height</option>
<?php
$options = array("4ft 5in - 134cm", "4ft 6in - 137cm", "4ft 7in - 139cm", /* and all your other options ... */);
$yourvalue = "4ft 6in - 137cm"; // or any valid entry
foreach($options as $option) {
echo '<option value="'.$option.'" label="'.$option.'" '. ($option == $yourvalue ? 'selected' : '') .'>'.$option.'</option>';
}
?>
</select>
于 2012-05-03T12:49:57.757 に答える
3
パラメータを渡すことで を与えるヘルパー関数をいつでも作成でき<option>
ます。の線に沿った何か
function get_option($value, $selected_value) {
return '<option value="' . $value . '" label="' . $value . '"' . ($value == $selected_value ? ' selected="selected"' : '') . '>' . $value . "</option>\n";
}
これにより、値ごとに記述する必要がなくなりますが、代わりに
$selected_value = '4ft 5in - 134cm';
echo get_option('4ft 5in - 134cm', $selected_value);
echo get_option('4ft 6in - 137cm', $selected_value);
//etc, etc
于 2012-05-03T12:49:17.233 に答える
0
JavaScript を使用したくない場合は、回避するコードを作成する必要があります。
<? $selected = "6ft 10in - 208cm"; ?>
<select name="height" id="height">
<option value="" label="Select">Select Height</option>
<? foreach ( $options as $option ): ?>
<option value="<?= $option; ?>" <?= ($option == $selected ? "selected" : ""); ?> ><?= $option; ?></option>
<? endforeach; ?>
</select>
于 2012-05-03T12:52:27.493 に答える