0
function ddlList_Changed() {
    var ddlList = jQuery('select[name*="ddlList"]');
    var value = jQuery(ddlList).val();
    alert(value);
}

上記は、ドロップダウンリストの選択が変更されるたびに「未定義」を表示するアラートを示しています。

他のシナリオを読んだことがありますが、.val()は未定義であり、ドキュメントの準備ができた/完全にロードされた後に.val()を呼び出す必要があるという提案がありましたが、これはとにかくその段階をはるかに超えています選択が変更されたときにのみ解雇されますか?

注:ddlListはnullではなく、最初は問題なく選択されます。.val()が問題のようです。

4

3 に答える 3

2

エラーがどこにあるかを確認できるように、コード例(関連するHTML、JavaScriptイベントコードなど)を提供してください。間違っているのは選択変更イベントまたはval()関数ではないためです。

また、おそらくddlListをjQueryオブジェクトで何度も再ラップするべきではありません。

また、要素でイベントハンドラーが呼び出されると、その要素がthis変数に割り当てられることに注意してください。jQueryセレクターを再度使用してイベントハンドラーを見つける必要はありません。

実例: http: //jsfiddle.net/RCLjy/5/

于 2012-07-27T15:48:43.967 に答える
1

http://jsfiddle.net/39hwp/

あなたに必要なのは:

$('select[name*="ddlList"]').change(function () {
    alert($(this).val());     
});
于 2012-07-27T15:49:58.293 に答える
1
$('select').change(function(){
     var ddlList = $('select option:selected').val();
     alert(ddlList);                   
});
于 2012-07-27T15:56:11.917 に答える