js设置select下拉框默认选中

以下#sel为select的id
单选框:
一:通过value值设置默认选中
方法一:

 $("#sel").val('xx');//设置value为xx的option选项为默认选中

方法二:

 $("#sel option[value='xx']").prop("selected",true);
 $("#sel option[value='xx']").prop("selected",selected);//两种方法效果一样

二:通过text设置默认选中

var selected="锤子";
$("#sel").find("option").each(function(){
 		if($(this).text() == selected)	{
 			$(this).attr("selected",true);
 		}
 });

踩坑的方法:
一:

   $("#sel").find("option:contains('xx')").attr("selected",true);
   $("#sel").find("option:contains('xx')").prop("selected",true);

通过判断是否包含某个值设置,如果有两个字符串开头的字母相同会造成不精确的问题
(比如’中国’/‘中国人’,通过‘中国’设置时,会默认选择最后一个包含’中国’的字符串)

二:

 $("#sel").find("option[text='xx']").attr("selected",true);  

要是想通过option的文本设定的话,这个方法不合适。这种写法相当于option含有text这个属性

多选框:


$("#sel").val(Array('1','2'));//设置value=1和2的选项为默认选中

你可能感兴趣的:(javascript,jquery)