AJAXリクエストから返されたXMLを解析していますが、解析する前に確認する必要がある特別なケースがあります。サーバーがHTMLを返すことがありますが、その場合はページでリロードを実行する必要があります。問題は、head要素にあるMETAタグを簡単にチェックしようとすると、何も返されないことです。
以下は、返されるhtmlの例です。
<html>
<head>
<title>Redirection</title>
<META HTTP-EQUIV="REFRESH" URL="https://testurl/desktop"/>
<META HTTP-EQUIV=Pragma CONTENT=no-cache>
</head>
</html/>
以下は、私が試してデバッグするために使用しているjQueryのスニペットです。xml varは、$。ajax()呼び出しのsuccessメソッドから返されるものです。
parseXml(xml) {
$(xml).parent().find('META').each(function() {
location.reload();
});
}
.find()メソッドはMETAタグを見つけることはなく、終了してコードを壊します。任意の提案をいただければ幸いです。
これが$.ajax({type:'POST'、url:'?action = someAction&target = someTarget'、success:function(response){try {varorders = parseXml(response);}});を使用したajax呼び出しです。
これが私が通常返すサンプルxmlです
<?xml version="1.0" encoding="ISO-8859-1"?>
<ORDERS>
<ORDER STATUS="OPEN" ID="62452254" DATE="May 5" />
<ORDER STATUS="FILLED" ID="341411" DATE="May 8" />
</ORDERS>