我有一个 jScript 函数来文本搜索下拉列表中的元素。它曾经工作正常,直到ie7。我有一个跨浏览器工作的解决方法,但在 ie7 中使用 jQuery 选项很慢:包含而不是正则表达式。
功能:
/// For the dropdown element passed, find the index where the Text matches the passes string
/// and select this option. Returns true if found otherwise false
function selectTextinDropdown(el, sometext) {
// Use REgex instead of option:contains as it it much faster!
$(el).find("option:[text^='" + sometext.trim() + "']").each(function () {
// works ok but SLOW in IE 7!!
// $(el).find("option:contains('" + sometext.trim() + "')").each(function () {
//alert("found|" + this.text + "|" + sometext);
$(this).attr("selected", "selected");
if ($(this).text() == sometext) {
$(this).attr("selected", "selected");
return true; //found and selected!
}
return false; //Not found and Not selected!
});
}
有人熟悉更好的解决方法吗?谢谢阅读!