0

問題に直面したとき、stackoverflow で別のユーザーを助けていました。何かを解決する方法を説明しましたが、(例として追加したかった) コードを実際に動作させることができませんでした。私は jQuery にかなり慣れていないので、基本と実行できることと実行できないことは理解していますが、単純なタスクにはまだ苦労しています。

この場合、2 つの入力フィールドを作成しようとしていますが、どちらもタグ付けシステム ( jQuery を選択) を使用しています。どちらの入力にも同じオプションのリストがあり、最初の入力に項目を入力すると、2 番目の入力にも自動的に追加されるようにしたいと考えています。アイデアは、最初のリストに影響を与えることなく、2 番目のリストから必要な項目を削除できるということです。

この jsfiddleで私の試みを見ることができます。最初の入力から値を抽出してループしようとしましたが、何らかの理由で最初の項目を超えてループしません。

また、最初の項目を次のように 2 番目のリストに適用しようとしました。

$('#shipping option[text='+value.value+']').attr('selected', 'selected');

そして、これを行うループの後:

$(".chosen-select").trigger('chosen:updated');

これが最初の項目を超えて機能しないことはわかっていましたが、それについても機能しませんでした. 私は次に何をすべきかかなり混乱しています。選択したものが入力を変更し、通常のように動作しないことは明らかですが、これを解決する方法がわかりません。どんな助けでも大歓迎です!

4

1 に答える 1

0

次の行を使用します。

$('#shipping option[value="'+value+'"]').prop('selected', true);

「United States」または「United Kingdom」を選択Chosenすると、これらのオプションが HTML に 2 回存在するため、プラグインで 2 回表示されることに注意してください。ただし、:firstセレクターを使用してこれを回避できます。

$('#shipping option[value="'+value+'"]:first').prop('selected', true);

編集

コードの動作は次のとおりです。http://jsfiddle.net/rf90210/uZBXM/2/

于 2013-08-25T22:15:55.580 に答える