<td>
タグ内からdata-url
という値を取得したいテーブルがあります。テーブルの内容は、最初に$.ajax GET
によって設定されます。次に、complete
-functionを使用して、コンソールにdata-url
の値をログオンします。結果はundefined
です。.attr()メソッドのjQuery定義されていない結果
$(document).ready(function(){
$.ajax({
type: "GET",
cache: false,
url: "http://localhost:80/server/api/v1/files",
success: function(data){
if (data.error) {
console.log(data.error)
} else {
$("#t1").append(data);
}
},
error: function(data){
},
complete: function(data){
console.log($('#t1 #f1').data('url'));
}
});
テーブルが最初に次のようになります。
<table id="t1">
<tr>
<th>
Name
</th>
</tr>
<tr>
<td>
<a id="f1" data-url="test" href="/Logo.jpg">...</a>
</td>
</tr>
</table>
にdata-url
の値を取得するための正しい方法何ができるか:Ajaxが、それはこのようになります呼び出した後
<table id="t1"></table>
あなたの意見ですか?
あなたのコードでは、(あなたが右のセレクタを持っている場合)正常に動作するように見える - あなたが具体的にどのような問題を抱えていますか? – Jamiec
'$( '#f1')。attr( 'data-url')'は動作しますが、どうしてですか?あなたが表示していないバックグラウンドで他のことが起こっている場合を除きます。テーブルは動的にロード/生成され、実行時には使用できません。 – Terry
あなたのコンソールを見れば、適切なセレクタを行ったところで動作します – Pete