これをチェックしてください
値を選択すると、価格が通知されます。そうではありません、それは空を警告しますか?正しく選択しないように。
私はparent()とparent()で試しましたが、違いはないようです。
どうすればこれを機能させることができますか?
これをチェックしてください
値を選択すると、価格が通知されます。そうではありません、それは空を警告しますか?正しく選択しないように。
私はparent()とparent()で試しましたが、違いはないようです。
どうすればこれを機能させることができますか?
closest('tr')
代わりに試してください。
var price = qty.closest('tr').find('td.price').text();
イベントをバインドする要素はselect
. の親は要素でselect
はありませんtr
。closest()
にアクセスするには、次を使用する必要がありますtr
。
$(document).ready(function(){
$('.qty').change(function(){
var qty = $(this);
var price = $(qty).closest('tr').find('td.price').text();
alert(price);
});
});
この理由はparent()
、メソッドの名前が示すように、現在の要素の親を参照し、親要素がメソッドに渡されたセレクターと一致する場合に処理を続行するためです。
closest()
DOM ユーティリティを調べて、メソッドに渡されたセレクターに一致する最初の祖先要素を見つけます。
現在parents()
の要素の祖先を検索し、メソッドに渡されたセレクターに一致するすべての要素を返す もあります。
これは、 http://jsperf.com/jquery-parents-vs-closest/8に従ってclosest
使用するよりもわずかに高速です。
「親」ではなく「親」を使う
$(this).parents('tr').find('.price').text();