1

这是我找不到解决方案的情况。我用这个:

// creating ajax object
// ====================

function createRequestObject(){
try { return new XMLHttpRequest() }
catch(e)
{
try { return new ActiveXObject('Msxml2.XMLHTTP') }
catch(e)
{
try { return new ActiveXObject('Microsoft.XMLHTTP') }
catch(e) { return null; }
}
}
}

这是为了使用 Ajax。因此,我使用 Ajax (http.responseText) 从 PHP 文件中获取文本。现在我需要找到文本中的所有 URL 链接,并将另一个 Ajax 请求发送到另一个 PHP 文件,该文件使用 cURL 读取标头检查链接的可用性。如果服务器响应为 200,则返回 HTML 链接,如果其他服务器响应或错误,则返回简单文本链接。

谁能帮助如何解决这个问题?

我想 JavaScript 可以这样工作:

  1. var PHPreturn = http.responseText。
  2. 打开 for() 循环以检查所有用退格键分隔的单词并检查所有单词是否有链接。如果链接套件适用于 URL 正则表达式,则添加一个新函数,该函数将向另一个 PHP 文件发送新的 Ajax 查询以检查链接,例如:

//打开循环,所有单词都用退格键分隔

for(...){

// 如果一个词是一个带有 http:// 的链接

if(regular_express == http://){

// 用加载条替换 word[i],而 ajax 从 PHP 文件返回响应

word[i].replace(word[i],'<span id="url_id"><img src="loading.gif"></span>');

// 发送 Ajax 查询并等待 PHP 文件返回

// checkURL("带有 GET url 变量的 PHP 文件","SPAN ID");

checkURL("http_response.php?url="+url,"span_id");


function checkURL(url,place){
var http = createRequestObject();
if(http){
http.open("GET", url);
http.onreadystatechange = function (){
if(http.readyState == 4){
document.getElementById(place).innerHTML = http.responseText;
}
}
http.send(null);
} else {
document.location = url;
}
}

我不知道所有这些 JavaScript 应该是怎样的。将不胜感激任何帮助。先感谢您。

4

1 回答 1

0

尝试使用 responseXML;

xmlDoc=xmlhttp.responseXML;
txt="";
x=xmlDoc.getElementsByTagName("img");
for (i=0;i<x.length;i++)
{
  // your code here.
}
于 2012-05-17T12:47:16.027 回答