ドロップダウンで要素をテキスト検索するjScript関数があります。ie7までは問題なく動作していました。クロスブラウザーで機能する回避策がありますが、正規表現の代わりに jQuery オプションを使用して ie7 で遅くなります。
関数:
/// 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!
});
}
より良い回避策を知っている人はいますか? 読んでくれてありがとう!