是否可以在不使用元素上的<select>
选项的情况下设置selected
元素的默认值?
我正在寻找一种可以从<select>
元素本身起作用的解决方案,例如:
<select name="country" style="width:210px;" [defaultvalue="option1"]>
....options....
</select>
(附在[]中用于说明我要找的内容)
是否可以仅执行此HTML?或者更好地用jQuery设置它?其他想法?
答案 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);