我试图获取特定网页的源代码,然后在其中找到一个特殊的<div>
。
我不想在浏览器中打开网页,因为我所做的事情应该是使用React Native在移动平台上运行(这不是我们关注的)。
如何在不使用vanilla JavaScript(没有jQuery)打开网页的情况下获取页面源?
答案 0 :(得分:2)
使用vanilla JS:
var x = new XMLHttpRequest();
x.onreadystatechange = function(){
if( x.status === 200 && x.readyState === 4) {
console.log(x.responseText);
}
}
x.open('GET', '/my/file/at/address.html', true);
x.send();
这将为您提供address.html
的原始文本内容。但是,由于它只是文本,您将无法执行document.querySelector('#mydiv')
之类的操作。我会再次推荐一个无头浏览器,具体取决于你想要做什么。
答案 1 :(得分:1)
使用jquery,您可以获得如下数据:
$.get("test.html",function(data){
console.log(data);
});
答案 2 :(得分:0)
我认为你可以使用 .load():
<table id="example" class="display" cellspacing="0" width="100%">
<thead>
<th>ID</th>
<th>Item Photo</th>
<th>Item Name</th>
<th>Stocks</th>
<th>Date Posted</th>
<th>Price</th>
<th>Actions</th>
</thead>
<tbody>
<form action ="<?php echo base_url()?>Shop/test" method="POST">
<?php
$x=1;
foreach($shop_items as $key)
{
?>
<tr>
<td><input class="checkbox" type="checkbox" name="cb[]" value="<?php $key->shop_item_id?>"> <?php echo $x;?> </td>
<td><center><img src="<?php echo base_url()?>uploads/items_main/<?php echo $key->shop_item_main_pic;?>" style = "width:60px;height:50px;"alt=""></center></td>
<td><?php echo mb_strimwidth($key->shop_item_name, 0, 18,"...");?></td>
<td style="width:10px;"><center><button><span class="fa fa-eye"></span></button></center></td>
<td><?php echo date('F,d,Y',strtotime($key->shop_item_date_posted))?></td>
<td><?php if(!$key->shop_item_sale){ echo number_format($key->shop_item_orig_price);}
else{ echo "<font color='red'>".number_format(intval($key->shop_item_orig_price-($key->shop_item_orig_price*($key->shop_item_sale/100))))."</font> ";}?></td>
<td>
<a href="">Bid </a> | <a href=""> View</a>
</td>
</tr>
<?php
$x+=1;
}
?>
<button class='btn btn-danger btn-xs' type="submit" name="delete" value="delete"><span class="fa fa-times"></span> delete</button>
</form>
</tbody>
</table>
让#dummy div隐藏:
$("#dummy").load("link");
通过这种方式,您将在div dummy 中加载HTML,然后您可以直接使用而无需解析结果。