ドロップダウンリスト項目を値ではなくテキストで選択するにはどうすればよいですか?jQuery - テキストでドロップダウンリストアイテムを選択するにはどうすればよいですか?
jQueryを使用してテキストでドロップダウンアイテムを選択したいとします。
ドロップダウンリスト項目を値ではなくテキストで選択するにはどうすればよいですか?jQuery - テキストでドロップダウンリストアイテムを選択するにはどうすればよいですか?
jQueryを使用してテキストでドロップダウンアイテムを選択したいとします。
は、あなたがこのテキストで「text_to_select」で、すべてのオプションを返すために起こっている
$("select option").filter(function() {
return $(this).text() == "text_to_select";
});
より具体的な何かを持つ要素を取得するために使用できるfilter function on jQueryがあります。私はこれがあなたのためにトリックを行うだろうと思い
:私のような何かをしました。 "contains"を使用するといくつかの値に一致する可能性があり危険です。 –
...
$("#selectId").find("option:contains('text')").each(function(){
if($(this).text() == 'Text that should be matched') {
$(this).attr("selected","selected");
}
});
ここで私が使用したコード(それは全く同じではありませんですその他の提案はこちら、jQuery v1.8.3で動作します)
var userToSearchFor = 'mike'; // Select any options containing this text
$("#ListOfUsers").find("option:contains('" + userToSearchFor +"')").each(function() {
$(this).attr("selected", "selected");
});
<select id="ListOfUsers" ></select>
これが役立つことを願っています。
国、州、市のドロップダウンも同様のシナリオでした。国には "インド"と "英領インド洋領土"がありました。 :contains()
の問題は、両方の一致を試行することです。これが受け入れ答えなければなりません
$('#country option').each(function(){
if($(this).text() == 'India'){
$(this).prop('selected', true).trigger('change');
}
});
$("selecter option:contains('" + data[i].ID+ "')").attr('selected', 'selected');
変数を実行する必要がある場合: var text = "Item 1";$( "selectオプション:contains(" + text + ")")。attr( 'selected'、true); – ROFLwTIME
類似のアイテムがない限り、これは正常に動作します。たとえば、「item」を検索し、そのオプションが「item 1」、「item 2」などの場合、新しいバージョンのjquery(1.6.1+?)を使用して複数の結果 – PostureOfLearning
を取得し、prop attr( 'selected'、true)の代わりに 'selected'、true)を返します。 – dlo