1

私は次のものを持っています:

$("#cityID").change(cityIdChanged(this))


function cityIdChanged(select) {
   store.setItem('CityID', select.val());
}

「select」はプロパティvalをサポートしていないというエラーメッセージが表示されるため、これは機能しないようです。

cityIdChanged関数に変更されたものへの参照を渡すにはどうすればよいですか?

4

2 に答える 2

1
$("#cityID").change(function(){
    cityIdChanged(this); // "this" is the DOM object
});


function cityIdChanged(select) {
   store.setItem('CityID', select.value); // You get value with .value not .val()
}

入力値を取得するためにjQueryを使用しないでください。

ライブデモ


DOMのプロパティと関数を知る

jQueryの目標の1つはDOMを抽象化することですが、DOMプロパティを知ることは非常に役立ちます。DOMについて学習せずにjQueryを学習する人が最もよく犯す間違いの1つは、jQueryのすばらしい機能を利用して要素のプロパティにアクセスすることです

$('img').click(function() {
    $(this).attr('src');  // Bad!
});

上記のコードで、thisはクリックイベントハンドラーが発生した要素を指します。上記のコードは遅くて冗長です。以下のコードは同じように機能し、はるかに短く、高速で、読みやすくなっています。

$('img').click(function() {
    this.src; // Much, much better
});

jQueryタグ情報

于 2012-05-06T14:01:43.777 に答える
0
$("#cityID").change(cityIdChanged(this))


function cityIdChanged(select) {
   store.setItem('CityID', $(select).val()); or // select.value but not select.val()
}
于 2012-05-06T14:00:23.347 に答える