设置<select>元素的默认值 - alternative </select>

时间:2013-09-15 15:45:35

标签: jquery html

是否可以在不使用元素上的<select>选项的情况下设置selected元素的默认值?

我正在寻找一种可以从<select>元素本身起作用的解决方案,例如:

<select name="country" style="width:210px;" [defaultvalue="option1"]>
....options....
</select>

(附在[]中用于说明我要找的内容)

是否可以仅执行此HTML?或者更好地用jQuery设置它?其他想法?

2 个答案:

答案 0 :(得分:1)

如果你想使用jQuery并在客户端设置默认值,你可以使用.val()函数:

$('select[name="country"]').val('fr-FR');

假设您有一个<option>元素value="fr-FR",这将在下拉列表中有效地预先包含此选项。

显然,如果您使用服务器端语言生成标记,最好直接在服务器上的相应选项上添加selected="selected"属性,而不是在某些客户端脚本上。这在语义上更正确。这样您甚至不会依赖某些客户端脚本和可能已禁用javascript等的客户端。您的服务器可以通过生成语义正确的标记来完成其工作,现在用户代理负责显示此标记。

答案 1 :(得分:1)

如果不使用selected属性或javascript就无法完成,但是,这里有一个如何使用jquery执行此操作的示例:

<select name="country" style="width:210px;" data-default="egypt">
....options....
</select>

var sel = $('select[name="country"]'),
   def = sel.data('default');

if(def) sel.val(def);