2012-01-14 21 views
0

2つの異なる選択ドロップダウンの値を見つけて、同じ名前を持つ場合は選択時に2つの値を一緒に追加して合計値を配列に入れるにはどうすればよいですかjqueryを使って?少し明確にするため複数のドロップダウンボックスを選択して値を追加する

EDIT

、私は動的にこの

BOX A、BOX A、TITLE

BOX B、BOX B、TITLEのように見える必要がリストを作成しています

BOX C、C BOX、TITLE 等...

すべてのリスト異なることはほとんどなく、ほとんど同じではありません。次回はボックスをDEまたはFにすることができます。選択されたとき(現在の変更)値が空でない場合は、対応するすべてのボックスを一緒に追加してから別の配列にプッシュする必要があります...

var s = sumOfAs、sumOfBs、sumOfCs];

私はこれが役に立てば幸い

... また、バックエンドはPHP THANKSです!ここで

EDIT

は、配列に値の第1セットをプッシュするjqueryのコードは、私は初期値に別の値を追加する方法を把握する必要があり

$("#selectionBox select").change(function(){ 
    s = []; 
    $("#selectionBox select option:selected").each(function(){ 
     $("#selected_songs").text(''); 

     var v = $(this).val(); 
     if(v != ''){ 
      s.push(v); 
     } 
     if(s != ""){ 
      $('#selectionButton').show(); 
      var mw = $("#list_month_New").val(); 
      var dw = $("#list_day_New").val(); 
      var yw = $("#list_year_New").val(); 
      var t = $("#listTitle").val(); 
      if(mw == "" || dw == "" || yw == ""){ 
       $("#songListWarning").show(); 
      }else{ 
       $("#songListWarning").hide(); 
      } 
     }else{ 
      $("#list_month_New").val(); 
      $("#list_day_New").val(); 
      $("#list_year_New").val(); 
      $("#listTitle").val(); 
      $('#selectionButton').hide(); 
     } 
    }); 
    s.sort(); 
    jQuery.each(s, function(){ 
      O = ""; 
      O = this+"<br />"; 
      str = /&(.+)/.exec(O)[1]; 
      num = O.replace(/\-.*/, ''); 
      fullString = '<span style="color:black">'+num+'</span> - '+str; 
      $("#selected_songs").append(fullString); 
    }); 

...ですか?

+0

名前でない限り、2つの入力は、フォーム内で同じ名前を持つことはできません'names []'のような配列です。 –

+0

私の目標は、一緒に追加する必要のある2つのボックスから誰かを選択して、選択時に画面に表示することです。問題は、私が選ぶべき約200のアイテムがあり、各アイテムにコンパニオンがあることです。それらが一緒に追加されると、空でないボックスだけが画面に表示され、一度選択したものを再提出すると、提出することができます。何か案は? –

+0

@PhpMyCoderそれは真実ではありません。私はそれが他の言語ではなく、PHPには当てはまると信じています。 –

答えて

0
var runningTotals = {}; 
$('select').each(function() { 
    var $this = $(this); 
    var name = $this.attr("name"); 
    var val = runningTotals[name]; 
    if (!val) { 
     val = 0; 
    } 
    val += +($this.val()); 
    runningTotals[name] = val; 
}); 

あなたが

を作っ変更編集用に更新するには、この fiddle


EDIT 編集を参照してください

+0

これを使用すると、runningTotalを配列に配置できます。 @PhpMyCoderが指摘したように、あなたの名前が正しい形式であることを確認する必要があります;) – Skyrim

+0

'[]'はPHP用です。彼は、彼がどのバックエンドを使用しているかは述べていない。 –

+0

ah、ic ...このソリューションが希望のケースでは機能しない場合 – Skyrim

関連する問題