2

5タブフォームからすべての入力を取得しています。それらを循環するとき、私はそれらをレビューセクションに追加しています。正常に動作していますが、値がユーザーにとって意味をなさないため、値ではなく選択ドロップダウンのテキストを表示したいと思います。これが私が使用しているコードのスニペットです。これは内部にあり、$(:input.each(function(){}選択されているかどうかを確認します。選択されている場合は、すべてのフィールド名に加えて、名前に'_in'を追加してtmp変数を設定します。次に、新しい変数の長さをチェックして、確認タブにあることを確認します。その場合は、htmlをテキストに更新します。問題は、すべてのドロップダウンテキストオプションが表示されることです。.val( )選択した値のみを表示します。

//Gives all text options from the drop down.
if ($(this).prop('type') == 'select-one') {
  var tmp = '#'+$(this).attr('name')+'_in';
  if ($(tmp).length > 0) {
    $(tmp).html($(this).text());
  }         
}

//Gives only value of selected option from drop down.
if ($(this).prop('type') == 'select-one') {
  var tmp = '#'+$(this).attr('name')+'_in';
  if ($(tmp).length > 0) {
    $(tmp).html($(this).val());
  }

修正されたソリューション

if ($(this).prop('type') == 'select-one') {
  var tmp = '#'+$(this).attr('name')+'_in';
  var tmp2 = '#'+$(this).attr('name')+' option:selected';
  if ($(tmp).length > 0) {

tmp3 = $(tmp2).text();
$(tmp).html(tmp3);
}           
}
4

1 に答える 1

1

を使用して選択のテキストを取得できます

$("#yourdropdownid option:selected").text();

于 2012-07-18T15:23:09.907 に答える