我有一个选择控件,在一个javascript变量,我有一个文本字符串。

使用jQuery,我想设置选择控件的选定元素为我有文本描述的项目(而不是值,这是我没有的)。

我知道用值来设置它很简单。如。

$("#my-select").val(myVal);

但我有点难住了,通过文本描述。我想一定有办法从文本描述中得到价值,但我的大脑在周五下午太忙了,无法解决这个问题。


当前回答

这里有一个简单的选择。只需设置列表选项,然后将其文本设置为选定值:

$("#ddlScheduleFrequency option").selected(text("Select One..."));

其他回答

这里有一个简单的选择。只需设置列表选项,然后将其文本设置为选定值:

$("#ddlScheduleFrequency option").selected(text("Select One..."));

这里有一个很简单的方法。请使用它

$("#free").val("y").change();

非常精细,其他的似乎都不管用

选择美元(“[name = " dropdown’美元)。(儿童)短信先生(“”)。道具(selected, true);

为我工作。

1.7+最简单的方法是:

$("#myDropDown option:text=" + myText +"").attr("selected", "selected"); 

1.9+

$("#myDropDown option:text=" + myText +"").prop("selected", "selected"); 

测试和工作。

我在上面的例子中遇到了一个问题,这个问题是由于我的选择框值预填充了6个字符的固定长度字符串,但传入的参数不是固定长度。

我有一个rpad函数,它将右垫字符串,到指定的长度,并与指定的字符。因此,填充参数后,它可以工作。

$('#wsWorkCenter').val(rpad(wsWorkCenter, 6, ' '));


function rpad(pStr, pLen, pPadStr) {
if (pPadStr == '') {pPadStr == ' '};
while (pStr.length < pLen)
    pStr = pStr + pPadStr;
return pStr; 
}