2017-01-22 20 views
1

私は、複数のoptionタグが内部にあるselectタグを持つバイリンガルフォームを作成しています。私はそのクラスを "blah"、値を "1"とし、それを "selected"オプションとして選択したいと思っています。複数の[属性=値]セレクタの使い方同じ要素のセレクタ?

classに基づいて選択し、次にvalueを選択しましたが、結果はnullです。ここに私のコードはあります:

$('select').each(function (e, item) { 

      var selectedEnglish = $(item).children("option[class='English']") 
      var englishItem = selectedEnglish.find("option:selected").val(); 

      var farsiList = $(item).children("option[class='Farsi']") 
      var farsiItem = farsiList.find("[value='" + englishItem + "']"); 

      farsiItem.attr('selected', 'selected'); 
    }); 

続きを読む1つのステートメントチェーンはどのようにして入手できますか?

このjqueryのに移入され、選択:あなたの場合は

$('select option[class=blah][value="1"]') 

$("#TitleId").html(""); 
      $("#TitleId") 
       .html("<option value='' class='Farsi'>عنوان</option><option value='' class='English'>Title</option>"); 
      $.each(titles, 
       function (key, value) { 
        $("#TitleId") 
         .html($("#TitleId").html() + 
          "<option class='Farsi' value='" + 
          value.Id + 
          "'>" + 
          value.Name + 
          "</option>"+ 
          "<option class='English' value='" + 
          value.Id + 
          "'>" + 
          value.EnName + 
          "</option>"); 
       }); 
+0

このコードにはいくつかのHTMLを提供できますか? – br3t

+0

明確にするために、あなたは英語のための 'select'と、ペルシア語のための一つの' select'を持っていますか? – changepicture

+0

@changepicture私は複数のselect要素を持っています。各 "選択"には、各項目に対して同じ値を持つがクラスとテキストが異なる2つのオプションがある。私はそのクラスに基づいて表示/非表示で言語を切り替えるつもりです。 – Afsaneh

答えて

2

あなたはクラス「何とか」と値を持つオプションを取得したい場合は「1」は、これはあなたのクエリですそのオプションを選択してください:

$('select option[class=blah][value="1"]').attr('selected', 'selected'); 
+0

初めて選択項目を変更します。 2回目ではありません。 – Afsaneh

+0

クラスまたは値を変更しない限り、正しく動作するはずです。クラスまたは値を変更する場合は、それに応じてクエリを更新する必要があります。 – poushy

関連する問題