0

3 つのコンボ ボックス (部門、カテゴリ、サブカテゴリ) があります。添付の​​ jsfiddle の例を参照してください: http://jsfiddle.net/cFLQr/1/

2 番目のコンボボックス (カテゴリ) を選択すると変更イベントが発生しますが、何らかの理由で、3 番目のコンボボックスをクリックするとすぐに (ページ上で他の操作を行わずに)、「プロパティ '値' を読み取れません」というエラーが表示されます。未定義"。

ただし、少し異なる方法で 2 番目のコンボボックス (カテゴリ) を選択し、ページの他の場所をクリックすると、イベントが 2 回発生します (変更時に 1 回、ページの他の場所をクリックしたときに 1 回)。2 番目の変更イベントは、上記のエラーを停止し、正しい情報を渡します。

ページの他の場所をクリックすると 2 番目の変更イベントが発生する理由と、最初の変更イベントが 2 番目の変更イベントの役割を果たさない理由を理解するのを手伝ってください。:-/

どうもありがとうリッチ

PSフィドルのためにこれらにいくつかのダミーデータをチャックしたことに言及する価値があります。ローカル環境でデータを動的に呼び出す

4

1 に答える 1

0

基本的に問題は、クライアント オブジェクトによって公開されたselectedIndexフィールドを使用していることです。これは実際にはパブリック フィールドではありません。内部使用用です。

change イベントが発生したときに値やテキストを取得したい場合は、対応するメソッドtext()およびvalue()を使用する必要があります。

変更イベント ハンドラーでは、これはクライアント オブジェクトを指します。

入力this.text()してテキストthis.value()を取得し、値を取得できます:)

ここに更新されたjsfiddleがあります

http://jsfiddle.net/cFLQr/4/

于 2012-10-08T20:17:32.927 に答える