我有一个HTML动态生成的选择。
当页面加载时,我想让页面加载时选择框有一个变量默认选项,而不必更改选择列表的顺序。
当我动态生成页面时,我无法通过设置value
属性来完成这项工作。无论value
属性如何,它始终是可见的最高值。
我还希望能够在加载文档后通过jQuery更改它。
这可能吗?
<select class="form-control input-lg" tabindex=1 id="instrument-select"
name="instrument" value="<?php echo $instrument->slug; ?>">
<?php foreach ($instrument_list as $instrument): ?>
<option value="<?php echo $instrument['slug']; ?>">
<?php echo $instrument["name"]; ?>
</option>
<?php endforeach; ?>
</select>
答案 0 :(得分:3)
我认为你只需要这样做
<select class="form-control input-lg" tabindex=1 id="instrument-select" name="instrument">
<?php foreach ($instrument_list as $instrument): ?>
<option value="<?php echo $instrument['slug']; ?>" <?php echo $instrument->slug==$instrument['slug']?'selected="selected"':''; ?>><?php echo $instrument["name"]; ?></option>
<?php endforeach; ?>
</select>
永远不要将值属性添加到选择,它应该存在于每个选项上,并且只需要选择所需的选项。
答案 1 :(得分:1)
动态创建选择html时,将“selected”属性添加到要选择的选项元素中;
<option value='firstOption'>firstOption</option>
<option value='someOption' selected>Some Option</option> <!-- this one will be selected -->
<option value='thirdOption'>thirdOption</option>