HTML在不同位置的页面之间传递值

时间:2014-07-23 18:51:55

标签: javascript php html parameter-passing

我需要在服务器A上打开一个html页面并从服务器B的网页中获取一些值。换句话说,我想在服务器A的网页上显示server-B的网页值。

我需要来自的值的网页(服务器-B)数据正由我无法访问的来源填充。这些值被写入看起来像这样的变量:[[0]]。访问页面时,使用当前数据填充值[[0]]。

我尝试将标签附加到[[0]]以允许使用表单帖子和get方法从服务器A读取,但未成功。

我的方法是将[[0]]中的数据移动到服务器A网页?

Server-B页面:

<html>
<!-- Head information for the page including page title -->

<head>
  <title>Test</title>
</head>

<body color=#FFFFFF>
  <!-- Start of your page body -->
  <!-- This code displays the current tag value for index 0
    [[0]] will be replaced by the tag value a the time the page is loaded -->
  The value of the tag with index 0 is [[0]]
  <!-- Added code to store [[0]] in div -->
  <div class="pink-box" id="thatDiv">[[0]]</div>
</body>

</html>

我为Server-A添加了这个html / javascript,我收到COR描述的错误:

<!doctype html>
<html lang="en">

<head>
  <meta charset="utf-8">
  <title>Get Div</title>
  <style>
    body {
      font-size: 12px;
      font-family: Arial;
    }
  </style>
  <script src="//code.jquery.com/jquery-1.10.2.js"></script>
</head>

<body>
  <b>Div:</b>
  <ol id="Result"></ol>
  <script>
    $("#Result").load("http://192.168.1.168/user/default.html #thatDiv");
  </script>
</body>

</html>

2 个答案:

答案 0 :(得分:0)

您可以获取HTML文件的内容并找到起始位置&#34; [[&#34;和结束&#34;]]&#34;并抓住两者之间的数据。

<?php
$serverBFile = "http://www.serverB.com/file.html";
$serverBHTML = file_get_contents($serverBFile);
$serverBStart = stripos($serverBHTML,"[[");
$serverBEnd = stripos($serverBHTML,"]]");
$serverBLength = $serverBEnd - $serverBStart;   
$serverBValue = substr($serverBHTML, $serverBStart, $serverBLength);
?>

答案 1 :(得分:0)

我过去这样做的方式是使用像jQuery这样的DOM解析工具。

如果您可以访问node.js服务器,则可以使用jQuery插件加载服务器B的网页,然后查询与所需标记一致的内容,包括ID,类名,标记名,位置等。

<html>
<!-- Head information for the page including page title -->
<head>
<title>Test</title>
</head>
<body color=#FFFFFF>
<!-- Start of your page body -->
<!-- This code displays the current tag value for index 0
[[0]] will be replaced by the tag value a the time the page is loaded 
let's say [[0]] becomes a <div>-->
<div class="pink-box" id="thatDiv">data I want</div>
</body>
</html> 

从这里开始,通过$('#thatDiv').text()$('.pink-box').text()提取文字相当容易。

这是一个相当简单的解决方案。将该值传入节点服务器中的变量后,只需公开一个REST调用,即服务器 - 网页可以向其发出AJAX请求。

我说使用节点的原因是因为该页面似乎具有必须使用JavaScript加载的动态内容。如果我更了解这个页面如何互动,我将能够为您的问题提供更具体的解决方案,