まずは、ページを設定する理想的な方法ではありませんが、スクリプトを1つのファイルとして配布する必要があります。Firefoxエラー '要素が見つかりません'
javascriptが付いたxhtmlドキュメントの上部にphpスクリプトがあります。特定の条件下では、XHRを使用してページ自体にクエリ文字列を送信します。一番上のphpがアクティブになり、渡されたコンテンツをセッションとして保存した後、自身を強制終了します(exit())。 XHRは非同期であり、コンテンツを返すかどうかはチェックされません。
Firefox 3では、XHR要求が送信されるたびに、エラーコンソールにエラーno element found
がスローされます。また、私がexit('Done')
のような出口を使用した場合、Firefoxは可視のDOMに挿入するかのように構文エラー(完了)をスローします。これはOperaでは起こりそうにないようです。
既に生成されたxhtmlページからセッションを保存する方が良いですか?明らかに私は別のページにXHRすることができましたが、私はそれをすべて1つのスクリプトに保存したいと思います。 FirefoxはDOMへの更新としてXHRリクエストを自己に扱いますか?私はなぜこのエラーを送信しているのかわかりません。
更新私が言ったようにXHRリクエストが行われたときに、Firefoxが唯一のエラーをthows。このページは有効なXHTMLであり、XHR要求がページ自体に対して行われていない限り、エラーなく完全に動作します。
本当に何も返さないので、なぜエラーを送信しているのだろうと思っていました。
ここでは、オブジェクトからajaxリクエストを行うjavascriptスニペットを示します。 コールバック関数を使用せずにXHRオブジェクトを作成し、情報を通知します。同じページを参照していないときは正しく動作します。
var saveState = { saveContent: function(updateActiveMenu) {
var sendState = new ajaxObject(gV.url);
if (!updateActiveMenu) {
var storageContainer = document.getElementById("StorageContainer").innerHTML;
var menu = document.getElementById("Nav").innerHTML;
sendState.update("Containerstring="+urlencode(storageContainer)+"&Nav="+urlencode(menu)+"&Active="+gV.activeMenuItem, 'POST', true); } }, }
とPHPは、この
if (isset($_REQUEST['Containerstring']) && isset($_REQUEST['Nav']) && isset($_REQUEST['Active'])) {
$_SESSION['Containerarray'] = (saveContainer(regulateEscapes(urldecode($_REQUEST['Containerstring']))));
$_SESSION['Navarray'] = (saveNav(regulateEscapes(urldecode($_REQUEST['Nav']))));
$_SESSION['Active'] = $_REQUEST['Active'];
exit('Done');
}
は、私も、私はinnerHTMLプロパティを使用してすべきではありません知っていませんが、それはまた別の話
エラーがこの
Error: no element found
Source File: http://localhost/ajax.php?1244648094055
Line: 1
あります
エラーは、p私が使用しているhpページは、決して呼び出されないクエリ文字列を参照します。
説明している内容に多少の矛盾があります。 xhrが返された値(決して 'Done')を使用しない場合、DOMに挿入することはできません。 – SilentGhost
あなたのコードのいくつかの小さな例を投稿してください。 – SilentGhost
なぜページのソースの関連部分を入れないのですか? –