Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从网页读取div值_Javascript - Fatal编程技术网

Javascript 从网页读取div值

Javascript 从网页读取div值,javascript,Javascript,我真的没有发现这方面的任何东西。我想从网站上读取数据。从我的网页上,我可以用 <div class="tools">hammer</div> var divs = document.getElementsByTagName("div"); for(var i=0; i<divs.length; i++ ) { if(divs[i].className == "tools") { alert(divs[i].inner

我真的没有发现这方面的任何东西。我想从网站上读取数据。从我的网页上,我可以用

<div class="tools">hammer</div>

var divs = document.getElementsByTagName("div");
    for(var i=0; i<divs.length; i++ ) {
        if(divs[i].className == "tools") {
            alert(divs[i].innerHTML);
        }
    }
锤子
var divs=document.getElementsByTagName(“div”);

对于(var i=0;i如果您使用的是像jQuery这样的库,那么您可以简单地使用
load()
函数,该函数获取网页的代码(如果您将
#myDiv
附加到URL,则为网页的一部分)。然后,如果将该信息放入变量中,则可以处理该信息。如果您只是使用Javascript,则需要研究发出AJAX请求(这就是
load()
所做的)。您可以找到有关如何执行此操作的更多信息

有关
load()
函数的更多信息

请记住,jQuery的
load()
函数用于将HTML加载到元素中。如果您希望读取和操作该数据,则可能应该使用。这样您可以执行以下操作:

$.ajax({
    type: 'get',
    url: 'http://www.google.com',
    crossDomain: true, //Very important, ensures you can get data from a domain that isn't your own!
    success: function(data) {
        $('#myDiv').html(data);

        //Now I can handle all the HTML from my URL from a <div> tag called #myDiv, the following will alert out the body of http://www.google.com
        alert($('#myDiv').find('body'));
    }
});
$.ajax({
键入:“get”,
网址:'http://www.google.com',
crossDomain:true,//非常重要,确保您可以从非您自己的域获取数据!
成功:功能(数据){
$('#myDiv').html(数据);
//现在,我可以从一个名为#myDiv的标记处理URL中的所有HTML,下面将提醒http://www.google.com
警报($('myDiv')。查找('body');
}
});

这将本质上对指定的URL发出GET请求,同时注意它与请求的来源(您的服务器)的域名不同然后使用变量
data
中返回的HTML处理函数中的成功。您现在可以随意使用数据,因为它现在是您的变量,包括随意解析该信息。

如果您使用像jQuery这样的库,那么您只需使用
load()
函数,该函数获取网页的代码(如果将
#myDiv
附加到URL,则获取网页的一部分)。然后,如果将该信息放入变量中,则可以处理该信息。如果只是使用Javascript,则需要考虑发出AJAX请求(这就是
load()
所做的)。您可以找到有关如何执行此操作的更多信息

$file=fopen($URL,'r'); 
    if ($file) 
    { 
    $string =""; 
    while (!feof($file)){ 
            $string .=fgets($file,512); 
    } 
echo $string; 
}else echo "error";
有关
load()
函数的更多信息

请记住,jQuery的
load()
函数用于将HTML加载到元素中。如果您希望读取和操作该数据,则可能应该使用。这样您可以执行以下操作:

$.ajax({
    type: 'get',
    url: 'http://www.google.com',
    crossDomain: true, //Very important, ensures you can get data from a domain that isn't your own!
    success: function(data) {
        $('#myDiv').html(data);

        //Now I can handle all the HTML from my URL from a <div> tag called #myDiv, the following will alert out the body of http://www.google.com
        alert($('#myDiv').find('body'));
    }
});
$.ajax({
键入:“get”,
网址:'http://www.google.com',
crossDomain:true,//非常重要,确保您可以从非您自己的域获取数据!
成功:功能(数据){
$('#myDiv').html(数据);
//现在,我可以从一个名为#myDiv的标记处理URL中的所有HTML,下面将提醒http://www.google.com
警报($('myDiv')。查找('body');
}
});
这将本质上对指定的URL发出GET请求,同时注意它与请求的来源(您的服务器)的域名不同然后使用变量
data
中返回的HTML处理函数中的成功。您可以随意使用数据,因为它现在是您的变量,包括如何解析该信息

$file=fopen($URL,'r'); 
    if ($file) 
    { 
    $string =""; 
    while (!feof($file)){ 
            $string .=fgets($file,512); 
    } 
echo $string; 
}else echo "error";
这与网络相呼应,但你可以用它做任何事情

好的。下面是一个如何在js中查询网站的方法

var xmlhttp;

if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }


   xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    return xmlhttp.responseText;
    }
  }


var answerFromURL=xmlhttp.onreadystatechange();


    xmlhttp.open("GET","urlToParse.php",true);
    xmlhttp.send();
这与网络相呼应,但你可以用它做任何事情

好的。下面是一个如何在js中查询网站的方法

var xmlhttp;

if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }


   xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    return xmlhttp.responseText;
    }
  }


var answerFromURL=xmlhttp.onreadystatechange();


    xmlhttp.open("GET","urlToParse.php",true);
    xmlhttp.send();


您可以使用
getElementsByClassName
而不是
getElementsByTagName
来使用
class=“tools”获取所有元素
。它必须使用javascript吗?您可以使用bash脚本,也可以使用java脚本HttpSocket@Pietu1998并非所有浏览器都支持AFAIK getElementsByClassName,或者它存在问题sometimes@MitchBukaner我知道js和php。你有什么想法?是从其他网站上寻找东西,对吗?你可以使用
getElementsByClassName
而不是
getElementsByTagName
使用
class=“tools”获取所有元素
。它必须使用javascript吗?您可以使用bash脚本,也可以使用java脚本HttpSocket@Pietu1998并非所有浏览器都支持AFAIK getElementsByClassName,或者它存在问题sometimes@MitchBukaner我知道js和php。你有什么想法?这是从其他网站上寻找一些东西,对吗?不@jgillich…这是jQ中的加载事件uery.我说的是加载函数。这看起来不错。我应该把我的代码放到函数中吗?我的意思是`成功:函数(数据){我的整个js代码}`嗯,这个答案可能比我的好。你可以把代码放在那里,但我怀疑它在没有jimmyrigging的情况下是否能工作。:)我的代码使用jQuery(),如果您要使用任何jQuery,那么您的代码也可以是jQuery,而事实并非如此。通过这种方式,您可以在代码中保持一致性。我只是在我的问题中添加了代码块。我在代码中有jquery-else,所以必要的jquery版本被导入到文件中。我还需要什么?不需要@jgillich。。。这是jQuery中的加载事件。我说的是加载函数。这看起来不错。我应该将代码放入函数中吗?我的意思是‘success:function(data){我的整个js代码}`嗯,这个答案可能比我的好。你可以把代码放在那里,但我怀疑如果没有一些jimmyrigging,它是否能工作。:)我的代码使用jQuery(),如果要使用任何jQuery,那么最好让代码也使用jQuery,而不是jQuery。通过这种方式,您可以在代码中保持一致性。我只是在我的问题中添加了代码块。我在代码中有jquery-else,所以必要的jquery版本被导入到文件中。我还需要什么?这甚至不是JavaScript,而是php。他说他知道这是php,但这个问题特别需要一个JavaScript解决方案