2011-07-06 16 views
0

私のテンプレートでダイナミックドロップダウンを作成しています。私はそれらの選択された価値を得ることができません。jsでダイナミックドロップダウンの選択値を取得する方法

次のコードを使用して値を取得しましたが、値がNULLになりました。あなたは同じid -the selectと、前divとの2つの要素を作成しているように見える投稿したコードから

$('#jobDropDown1').val() 
+0

あなたは 'div'と' select'の両方に同じ 'id'を使います。どうして? – thecodeparadox

答えて

1

は見え

1

複数の要素が同一のIDが割り当てられて 、IDだけDOMの最初の マッチした要素を選択すること を使用するクエリされている場合:jQuery docsから。

これはあなたのコードではなくselectよりも、div要素のvalueを取得しようとしていることを意味します。 div与えてみid異なる:そのIDに1を追加し、それはトリックを行います

<select id="jobDropDown' 

のようにあなたが

$('#jobDropDown1').val() 

を呼び出していますが、選択

var newjobDropDown = $(document.createElement('div')).attr('id', 'jobDropDown_div' + counter); 

newjobDropDown.after().html('<label><?php echo __(Job Vacancy); ?></label>' + 
          '<select id="jobDropDown' + counter +'"'+' onchange="validate()"'+' class="vacancyDrop"'+'>'+buildVacancyList()+'</select>'+ 
          '<span onclick="removeDrop(event)"'+'class="removeText"'+ 'id="removeButton'+counter+'">'+remove+'</span>'+'<br class="clear" />'); 

newjobDropDown.appendTo('#TextBoxesGroup'); 
+0

idは1ページ内で一意である必要があります。 – Quincy

+0

あなたは 'div'と' select'の両方に同じ 'id'を使います。どうして? – thecodeparadox

+0

もう一度私の答えをお読みください。私が投稿したコードは、IDが 'jobDropDown_div(N)'で 'select'が' jobDropDown(N) 'の後に' div'を作成します。 –

1

あなたは繰り返しましたidあなたは持っていないはずです。 あなたは2つの選択肢があります。その後、jQueryを使ってそれを選択し、異なるIDへ

1)の変更を正常に

2)あなたがしたくないことができない場合は、実行する必要があります。

$('select#jobDropDown1').val() 

これで、両方の等価IDをタグ名で区別しています。

これが役に立ちます。乾杯。

関連する問題