0

ユーザーが私に連絡したい理由を選択したら、フォームを更新して、関連情報を取得できるようにしたいと思います。現時点ではこれを持っています。

==== HTML ====

<select name="Reason" id="Reason" required>
         <option value="" disabled selected>Select Option</option>
         <option value="Please give me a price" >Price</option>
         <option value="I have some positive feedback">Postive Feedback</option>
         <option value="I have some negetive feedback">Negetive Feedback</option>
         <option value="I have a suggestion">Suggestion</option>
         <option value="Other">Other</option>
 </select>

JQueryを使用して、オプション選択から選択された値またはテキストを取得しようとしました(どちらでもかまいません)。.change() 関数を使用して値が変更されると、警告ボックスを表示することができましたが、選択したオプションの値を表示したり、何らかの方法でオプションを確認したりできませんでした。選択されていました。

==== JQuery ====

var selectedOption = $("#reason option:selected").text()

reason.change(checkValue);

function checkValue(){
    alert(selectedOption);
}

「価格」が選択されている場合はいくつかの入力テキストフィールドが表示され、他のものが選択されている場合は複数行のテキスト領域が表示されるだけです。

4

4 に答える 4

1

これが必要だと思いますよね?特別に回答:

「価格」が選択されている場合はいくつかの入力テキストフィールドが表示され、他のものが選択されている場合は複数行のテキスト領域が表示されるだけです。

$("#textBoxes").hide();
$("#textAreas").hide();

$("#Reason").change(function(){
    if(this.value == "Please give me a price"){
         $("#textBoxes").show();
         $("#textAreas").hide();
    }
    else{
         $("#textAreas").show();
         $("#textBoxes").hide();
    }
});

フィドルのデモ

于 2013-07-10T12:31:43.063 に答える
0

ハンドラー内で選択したオプションの値を取得する必要があります。そうしないと、変数が現在の値で更新されません。#Reasonまた、jQuery セレクターは大文字と小文字が区別されるため、 notを使用する必要があります#reason

これはあなたのために働くはずです:

$('#Reason').on('change', function(){
    var selectedOption = $(this).find("option:selected").text();
    alert(selectedOption);
});

ワーキングデモ

于 2013-07-10T12:31:42.193 に答える