这是我找不到解决方案的情况。我用这个:
// 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 可以这样工作:
- var PHPreturn = http.responseText。
- 打开 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 应该是怎样的。将不胜感激任何帮助。先感谢您。