作者LCHENAN (~!!)
看板Ajax
标题[问题] 有关Map的问题
时间Thu Apr 23 22:16:18 2009
各位前辈
小弟因为工作的需要 需要完成以下的目标
我也Google了很久,也看了Ajax技术手册这本书
但是 一直没有一个头绪
烦请各位前辈能开导在下 拜托了
因为,已经研究了快一个月,下星期就要交 实在有很大的困难
目标如下:
制做一个如下的介面
----------------------------------------
平移 放大 缩小
-----------------------------------------
Map图
--------------------------------------
其中,平移, 放大, 缩小 是一个Button
当我点选Button之後,就可去操作Map的图
而Map的图是使用MapXtreme java所产生的
而我想,这部份可以需要Ajax的技术
我的页面的程式码如下
我本身住在高雄,我愿意请吃大餐或者以请家教的方式
来向您请教
因为,我卡了很久了 因为 我是从完全不会javascript jsp ajax开始学的
因此,或许有很多地方都打错
希望能请人帮忙
<html>
<head>
<title></title>
<meta http-equiv="Content-Type"; charset="UTF-8">
<script type="text/javascript">
var xmlHttp;
var toolType;
var queryString;
function createXMLHttpRequest()
{
if (window.ActiveXObject)
{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest)
{
xmlHttp = new XMLHttpRequest();
}
}
function handleStateChange()
{
if(xmlHttp.readyState == 4)
{
if(xmlHttp.status == 200)
{
var responseDiv = document.getElementById("ShowMap");
if(responseDiv.hasChildNodes())
{
responseDiv.removeChild(responseDiv.childNodes[0]);
}
var responsetext = document.createTextNode(xmlHttp.responsetext);
//我个人觉得应该是这边有问题
//因为我要输出的是图档,但是这边是文字
responseDiv.appendChild(responsetext);
}
}
}
function setImage()
{
createXMLHttpRequest();
queryString="";
queryString = "/MapServer?";
//这边是说要使用MapServer这个Servlet,然後传送toolType参数给Servlet
//至於这个Servlet的程式码的输出部份,我会PO在最後面
quertString = queryString+ "toolType=0&" + new Date().getTime();
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("GET", queryString, true);
xmlHttp.send(null);
}
function downloadmap()
{
setImage();
}
</script>
</head>
<body>
TODO write content
<div id="tabTool">
<input type="image" id="Select" src="images/select.gif" alt="选择" onclick="downloadmap()" />
</div>
<div id="ShowMap">
</div>
</body>
</html>
拜托大家了! 感恩 谢谢!
如果有人愿意 当家教 教我怎麽撰写这部份的程式
我将非常非常的感谢
//=====================================================
Servlet程式码输出部份
private void resImg(MapJ myMap, HttpServletResponse res) throws Exception
{
try
{
myMap.setDeviceBounds(new DoubleRect(0, 0, m_mapWidth, m_mapHeight));
MapXtremeImageRenderer rr = new MapXtremeImageRenderer(m_mxtURL);
rr.render(ImageRequestComposer.create(myMap, NUM_OF_COLORS, BACKGROUND_COLOR, "image/gif"));
rr.toStream(res.getOutputStream());
}
catch(Exception e)
{
System.out.println(e.getMessage());
throw e;
}
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.125.136.75
1F:→ fillano:我想你不应该用ajax做,因为你的servlet传回的是一个image 04/23 22:41
3F:→ fillano:的stream。你能用的方式,也许是动态改变img的src属性吧? 04/23 22:42
4F:→ LCHENAN:感谢K版友的提供参考手册,而因为那本手册是MapInfo公司 04/24 08:57
5F:→ LCHENAN:所提供的开发者指南,在上面所说的都是使用Applet去开发 04/24 08:57
6F:→ LCHENAN:但基於主管的要求,要在Servlet开发,因此需要研究Ajax的 04/24 08:58
7F:→ LCHENAN:部份, 而那本手册是有提供一个HTTPEmbeddedServlet的参考 04/24 08:58
8F:→ LCHENAN:档案,我已大致上读懂, 因此才会想说 Servlet的部份 04/24 08:59
9F:→ LCHENAN:使用他们的方式去撰写, 而网页的部份, 则是使用Ajax 04/24 08:59
10F:→ LCHENAN:来向Server端抓取资料,我有参考了 04/24 09:00
12F:→ LCHENAN:但因为对Ajax-Dodj看不太懂,因此想请问各位版友们 04/24 09:01
13F:→ LCHENAN:有关这部份的资讯 04/24 09:01
14F:→ fillano:你从foxlee的blog拿来的程式,是用dojo来做,你不用dojo, 04/24 09:48
15F:→ fillano:那要自己实作一堆图形特效的javascript才有办法做出来。 04/24 09:49