jQuery .load()を使用してPHPファイルを読み込みます。このPHPファイルは新しいdivをエコーします。このdivには属性 "title"が含まれています。その値はjsファイルに取り込む必要があります。.load()を使用してロードされたファイル経由でDOMに追加された要素へのアクセス
// file.php
echo '<div id="max_page" title="' . $max_page . '"></div>';
// js
$("someElement").load("file.php");
var num = $("div#max_page").attr("title");
この結果、num = "undefined"となります。私は、この理由は、最初の$(document).readyが実行された後にdiv#max_pageがDOMに追加され、jQueryがその存在を単に知りませんと仮定しています。そうですか?
どのように問題を解決できますか? (.live()を試してみましたが、私のために働くことができませんでした)
私は示唆したように、実際には属性の値を取得しました。しかし、それはまだ変わっています。 var num = ...の行の下にある関数を呼び出すことはできますか? – Ben
割り当てられる 'num'に依存する@Ben関数、no。コールバック関数にもその要素を入れる必要があります。 – Niklas
私がしたいのはこれです:obj.totalPages = $( "div#max_page")。attr( "title"); displayNumbers(obj);そして、それは動作しません。しかし、displayNumbers()からすべてのコードを取得してコールバックにコピーすると動作します。冗長性を確保する方法はありますか? – Ben