こんにちは、私はデータベースからGsonを使ってJSONデータを作成してテーブルをロードしています。スクリプトは次のとおりです。ボタンクリックで動的に追加されたコンテンツのデータが表示されない
$(document).ready(function(){
$.ajax({
url:'GetProductList',
method:'post',
dataType:'json',
success: function(response) {
$(response).each(function(index,element){
$("#producttbl").append('<tr class="data-row"><td class="td-id">'+element.id+'</td><td class="td-product">'+element.product+'</td><td class="td- type">'+element.type+'</td><td class="td-quantity">'+element.quantity+'</td><td class="td-price">'+element.price+'</td><td class="td-date">'+element.date+'</td><td class="td-date"><input type="button" value="Buy" class="buy btn-primary" onclick="postData();"> </td> </tr>');
});
},
error: function(response){
alert('Error occured Could not load Data')
}
});
});
このデータをロードした後、私はクラスdata-row
と行のデータを取得したい私はこのスクリプトを持っているボタンclick
イベントに:
function postData()
{
var txtname = $(this).closest(".data-row").find('.td-product').text();
alert(txtname);
}
私はこの関数を呼び出していますonClick
イベントでは、それは私に何も与えません。
クリックして行のデータを取得する方法を教えてください。
私は単にボタンのclass = "td-product"を持つ行のデータを取得したいと思っています。そのpostDataを残してクリックして、購入ボタンでその行のテキストを取得する方法を教えてください。 – Ankur
要素がdomにロードされる前にロードされているので、要素が取得されていないことは本当ですか? – Ankur
これは、スクリプトの配置場所によって異なります。また、jQueryを.readyの中に入れると、それは本当に問題になるはずです。読んでください:http:// stackoverflow。com/questions/6026645/document-readyfunction-vs-script-at-the-bottom-of-page – yezzz