java - 单击显示 Iframe

标签 java ajax

我有一张 map ,您可以单击位置来获取该区域的信息,我希望在单击时在同一页面的 Iframe 中显示该信息

我的页面现在有这个链接

`<AREA SHAPE="CIRCLE" COORDS="555,142,6" HREF="http://www.Page.com" TITLE="" />`

任何建议

最佳答案

AJAX 的美妙之处在于您实际上并不需要 IFRAME 来执行此操作。

您有一个服务器,它将向您返回有关特定区域的信息。每个 AREA 标记只需要一个 onclick 属性,该属性调用 JavaScript 函数来检索该信息并将其显示在您在页面上预留的位置。

这是一个示例 HTML 页面,它将使用 AJAX 从服务器检索信息

<html>
<head>
<script type="text/javascript">
function getAreaInfo(id)
{
  var infoBox = document.getElementById("infoBox");
  if (infoBox == null) return true;
  var xhr = new XMLHttpRequest();
  xhr.onreadystatechange = function() {
    if (xhr.readyState != 4) return;
    if (xhr.status != 200) alert(xhr.status);
    infoBox.innerHTML = xhr.responseText;
  };
  xhr.open("GET", "info.php?id=" + id, true);
  xhr.send(null);
  return false;
}
</script>
<style type="text/css">
#infoBox {
  border:1px solid #777;
  height: 400px;
  width: 400px;
}
</style>
</head>
<body onload="">
<p>AJAX Test</p>
<p>Click a link...
<a href="info.php?id=1" onclick="return getAreaInfo(1);">Area One</a>
<a href="info.php?id=2" onclick="return getAreaInfo(2);">Area Two</a>
<a href="info.php?id=3" onclick="return getAreaInfo(3);">Area Three</a>
</p>
<p>Here is where the information will go.</p>
<div id="infoBox">&nbsp;</div>
</body>
</html>

这是将信息返回到 HTML 页面的 info.php:

<?php
$id = $_GET["id"];
echo "You asked for information about area #{$id}. A real application would look something up in a database and format that information using XML or JSON.";
?>

希望这有帮助!

关于java - 单击显示 Iframe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9963030/

相关文章:

javascript - 如何从单击事件对象中获取链接的 href 属性的参数

javascript - 将 JavaScript 变量传递给 PHP 并将 PHP 结果返回给 JavaScript 变量

java - 异常 : Can not read response from server. 预计读取 4 个字节,在连接意外丢失之前读取了 0 个字节

java - 用子类型覆盖方法

Javascript 和 Python - 最佳通信方法

javascript - 如何从异步调用返回响应?

ajax - ID值从ajax传递但在Action方法中没有接收为什么?

java - 我需要某种适用于 Android 的刚体碰撞检测引擎

java - 如何使用 k() 函数在 kdb/q 中接收数据

java - 在 Java 中将毫秒字符串转换为日期