亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JSP > 正文

點擊地圖div上的按鈕實現對地圖數據的入庫操作

2020-07-27 21:36:53
字體:
來源:轉載
供稿:網友
在地圖div上添加一個按鈕,單擊按鈕后彈出一個彈出層,在彈出層的輸入框內輸入數據后點擊提交按鈕將數據提交至數據庫。
mytest_map.jsp的代碼如下:
復制代碼 代碼如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<html lang='zh-cn' xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset='utf-8' />
<title>My OpenLayers Map</title>
<link rel="stylesheet" type="text/css" href="openlayers/theme/default/style.css"/>
<style type="text/css">
#map {
clear: both;
position: relative;
width: 1000px;
height: 600px;
border: 1px solid black;
}

#operator {
position: absolute;
top:10px;
left:40px;
z-index: 3000;
}

#popDiv {
position: absolute;
visibility: hidden;
overflow: hidden;
border: 2px solid #AEBBCA;
background-color: #EEF1F8;
cursor: move;
padding: 1px;
z-index:4000;
}

#popTitle {
background: #9DACBF;
height: 20px;
line-height: 20px;
padding: 1px;
}

#popForm {
padding: 2px;
padding-left: 15px;
}

.title_left {
font-weight: bold;
padding-left: 5px;
float: left;
}

.title_right {
float: right;
}

#popTitle .title_right a {
color: #000;
text-decoration: none;
}

#popTitle .title_right a:hover {
text-decoration: underline;
color: #FF0000;
}

</style>
<script type='text/javascript' src='openlayers/OpenLayers.js'></script>
<script type='text/javascript'>
function init() {
format = 'image/png';
var bounds = new OpenLayers.Bounds(
121.120606, 28.169589,
121.871688, 28.525587
);
var options = {
controls: [],
maxExtent: bounds,
maxResolution: 0.0013726171875,
projection: "EPSG:4326",
units: 'degrees'
};
map = new OpenLayers.Map('map', options);
//基礎圖層,可以用一個圖層組做基礎圖層
var baselayer = new OpenLayers.Layer.WMS(
"底圖",
"http://localhost:8080/geoserver/WenLing/wms",
{
layers:'WenLing:xianjie_region',
format:format,
},
{
isBaseLayer:true,//設置本層為基底圖層
yx : {'EPSG:4326' : true}
}
);

//縣界
var xianjie = new OpenLayers.Layer.WMS(
"縣界",
"http://localhost:8080/geoserver/WenLing/wms",
{
layers: 'WenLing:xianjie_region',
transparent:true, //設置從服務器返回的地圖圖像是透明的
format: format
},
{
displayInLayerSwitcher:false, //使該圖層不顯示在switcher中
//minScale:xxx , //只有達到一定縮放比例該圖層時才顯示
opacity:0.5 //設置客戶端圖層半透明
}
);

//水系
var waters = new OpenLayers.Layer.WMS(
"水系", "http://localhost:8080/geoserver/WenLing/wms",
{
layers: 'WenLing:shuixi_region',
transparent:true,
format: format
},
{
opacity:1 //設置客戶端圖層不透明
}
);

//島嶼
var islands = new OpenLayers.Layer.WMS(
"島", "http://localhost:8080/geoserver/WenLing/wms",
{
layers: 'WenLing:dao_region',
transparent:true,
format: format
},
{
opacity:0.5
}
);

//鐵路
var tielu = new OpenLayers.Layer.WMS(
"鐵路", "http://localhost:8080/geoserver/WenLing/wms",
{
layers: 'WenLing:tielu_polyline',
transparent:true,
format: format
},
{
transitionEffect:"resize", //使該圖層放大或縮小時產生調整大小的動畫
opacity:0.5
}
);

//縣
var xian = new OpenLayers.Layer.WMS(
"縣", "http://localhost:8080/geoserver/WenLing/wms",
{
layers: 'WenLing:xian_point',
transparent:true,
format: format
},
{
//minScale:xxx , //只有達到一定縮放比例該圖層時才顯示
opacity:0.5
}
);

//變電站
biandianzhan = new OpenLayers.Layer.WMS(
"變電站", "http://localhost:8080/geoserver/WenLing/wms",
{
layers: 'WenLing:biandianzhan_point',
transparent:true,
format: format
},
{
opacity:0.5
}
);

guangxianwang = new OpenLayers.Layer.WMS(
"光纖網", "http://localhost:8080/geoserver/WenLing/wms",
{
layers: 'WenLing:guangxianwang_polyline',
transparent:true,
format: format
},
{
transitionEffect:"resize", //使該圖層放大或縮小時產生調整大小的動畫
opacity:0.5
}
);

map.addLayers([baselayer, xianjie, waters, islands, tielu, xian, biandianzhan, guangxianwang]);

map.setCenter(map.getCenter());//設置地圖中心點
map.addControl(new OpenLayers.Control.PanZoomBar({
position: new OpenLayers.Pixel(2, 15)
}));
map.addControl(new OpenLayers.Control.Navigation());
map.addControl(new OpenLayers.Control.LayerSwitcher());
map.addControl(new OpenLayers.Control.Scale($('scale')));
map.addControl(new OpenLayers.Control.MousePosition());
map.zoomToExtent(bounds);

if (!map.getCenter()) {
map.zoomToMaxExtent();
}

}

function showPopup() {//彈出層
var objDiv = document.getElementById("popDiv");
objDiv.style.top = "50px";//設置彈出層距離上邊界的距離
objDiv.style.left = "200px";//設置彈出層距離左邊界的距離
objDiv.style.width = "300px";//設置彈出層的寬度
objDiv.style.height = "220px";//設置彈出層的高度
//objDiv.style.display = "block";
objDiv.style.visibility = "visible";
}
function hidePopup() {//關閉層
var objDiv = document.getElementById("popDiv");
objDiv.style.visibility = "hidden";
}

</script>
</head>
<body onload='init();'>
<div id='map'>
<div id="operator"><!--按鈕所在div-->
<input name="" type="button" onclick="showPopup()" value="操作" />
</div>
<div id="popDiv"><!--彈出層-->
<div id="popTitle"> <!-- 標題div -->
<span class="title_left">修改操作</span> <span class="title_right">
<a href="#" onclick="hidePopup();">關閉</a> </span>
</div>
<div id="popForm"> <!-- 表單div -->
<form action="insert_map.jsp" method="post">
<p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ID :<input type="text" name="id" value="0" /> </br>
名&nbsp;&nbsp;&nbsp;&nbsp;稱 :<input type="text" name="name" value="aaa" /> </br>
電壓等級 :<input type="text" name="voltage_level" value="110kv" /> </br>
經&nbsp;&nbsp;&nbsp;&nbsp;度 :<input type="text" name="lon" value="121." /> </br>
緯&nbsp;&nbsp;&nbsp;&nbsp;度 :<input type="text" name="lat" value="28." /> </br>
</p>
&nbsp;&nbsp; <input type="submit" value="提交" />&nbsp;&nbsp;
&nbsp;&nbsp; <input type="reset" value="重置" />&nbsp;&nbsp;
&nbsp;&nbsp; <input type="reset" value="取消" onclick="hidePopup()" />
</form>
</div>
</div>
</div>

<script type="text/javascript">
/*-------------------------鼠標左鍵拖動---------------------*/
/*--------當不需要實現此功能時,可以將這一部分代碼刪除------------*/
var objDiv = document.getElementById("popDiv");
var isIE = document.all ? true : false;//判斷瀏覽器類型
document.onmousedown = function(evnt) {//當鼠標左鍵按下后執行此函數
var evnt = evnt ? evnt : event;
if (evnt.button == (document.all ? 1 : 0)) {
mouseD = true;//mouseD為鼠標左鍵狀態標志,為true時表示左鍵被按下
}
}

objDiv.onmousedown = function(evnt) {
objDrag = this;//objDrag為拖動的對象
var evnt = evnt ? evnt : event;
if (evnt.button == (document.all ? 1 : 0)) {
mx = evnt.clientX;
my = evnt.clientY;
objDiv.style.left = objDiv.offsetLeft + "px";
objDiv.style.top = objDiv.offsetTop + "px";
if (isIE) {
objDiv.setCapture();
//objDiv.filters.alpha.opacity = 50;//當鼠標按下后透明度改變
} else {
window.captureEvents(Event.MOUSEMOVE);//捕獲鼠標拖動事件
//objDiv.style.opacity = 0.5;//當鼠標按下后透明度改變
}
}
}
document.onmouseup = function() {
mouseD = false;//左鍵松開
objDrag = "";
if (isIE) {
objDiv.releaseCapture();
//objDiv.filters.alpha.opacity = 100;//當鼠標左鍵松開后透明度改變
} else {
window.releaseEvents(objDiv.MOUSEMOVE);//釋放鼠標拖動事件
//objDiv.style.opacity = 1;//當鼠標左鍵松開后透明度改變
}
}

document.onmousemove = function(evnt) {
var evnt = evnt ? evnt : event;
if (mouseD == true && objDrag) {
var mrx = evnt.clientX - mx;
var mry = evnt.clientY - my;
objDiv.style.left = parseInt(objDiv.style.left) + mrx + "px";
objDiv.style.top = parseInt(objDiv.style.top) + mry + "px";
mx = evnt.clientX;
my = evnt.clientY;
}
}
</script>

</body>
</html>

在瀏覽器輸入:http://localhost:8080/myapp/mytestMap.html
訪問到mytestMap.jsp頁面,單擊左上角的“操作”按鈕,結果如下:
 
在輸入框中輸入測試數據,點擊提交,將會提交至insert_map.jsp頁面,并在insert_map.jsp頁面上顯示出數據庫中所有的點(包括剛剛添加的這個點),效果如下圖:
 
再次在瀏覽器中訪問地圖頁面,可以看到地圖上已經多出了剛剛添加的那個點,如下圖:
 
至此,基本操作算是完成。

后續需要做的工作有:
1,使點擊提交后仍然顯示在當前頁面,且對地圖進行刷新。
2,完善delete功能、修改功能
3,點擊“操作”按鈕后可以選擇添加、刪除或修改。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧洲亚洲免费视频| 精品无人区太爽高潮在线播放| 55夜色66夜色国产精品视频| 91精品视频在线免费观看| 亚洲精品网址在线观看| 亚洲国产精品大全| 自拍偷拍亚洲区| 亚洲人成网站在线播| 国产亚洲美女精品久久久| 欧美第一黄色网| 91精品国产色综合久久不卡98口| 亚洲电影免费观看高清完整版| 久久精品91久久香蕉加勒比| 国产精品福利小视频| 欧美黑人性视频| 亚洲一区二区中文| 亚洲免费一在线| 88国产精品欧美一区二区三区| 欧美性猛交xxxx乱大交3| 国内成人精品视频| 色婷婷久久一区二区| 久久人人看视频| 色老头一区二区三区| 亚洲毛片一区二区| 欧美中文在线字幕| 中文字幕欧美视频在线| 久久久久久网址| 91在线视频成人| 国产精欧美一区二区三区| 亚洲aⅴ日韩av电影在线观看| 亚洲午夜av电影| 奇米一区二区三区四区久久| 国产精品直播网红| 一区二区三区高清国产| 欧美极品少妇xxxxx| 97视频免费在线看| 欧美精品18videosex性欧美| 91色琪琪电影亚洲精品久久| 北条麻妃一区二区三区中文字幕| 日韩国产欧美精品在线| 国产精品第10页| 欧美理论在线观看| 久久五月天综合| 欧美成人合集magnet| 久久中文久久字幕| 亚洲国产精品999| 日韩精品一区二区三区第95| 亚洲第一福利网站| 这里精品视频免费| 色久欧美在线视频观看| 欧美激情精品久久久久| 亚洲精品xxx| 欧美成人免费在线观看| 国产精品成久久久久三级| 欧美日韩亚洲91| 欧美日韩免费看| 国产精品免费在线免费| 伊人久久久久久久久久久久久| 久久久999精品视频| 欧美激情一级精品国产| 亚洲а∨天堂久久精品9966| 在线视频日本亚洲性| 91亚洲永久免费精品| 欧美乱妇高清无乱码| 中文字幕少妇一区二区三区| 热门国产精品亚洲第一区在线| 色诱女教师一区二区三区| 国产美女久久精品香蕉69| 日韩中文字幕国产精品| 欧美成人黑人xx视频免费观看| 中文字幕精品在线| 成人午夜在线影院| 久久久精品影院| 国内精品400部情侣激情| 日韩欧美大尺度| 一区二区三区视频在线| 久久久精品在线观看| 黑人巨大精品欧美一区二区一视频| 亚洲精品小视频| 97成人精品区在线播放| 成人xxxxx| 国产精品电影观看| 色哟哟亚洲精品一区二区| 亚洲欧美三级在线| 国产91成人video| 欧美做爰性生交视频| 国产视频欧美视频| 亚洲第一网站男人都懂| 久久大大胆人体| 久久久精品久久久| 欧美一区二区视频97| 大荫蒂欧美视频另类xxxx| 国产精品久久久久免费a∨大胸| 亚洲成年人在线播放| 国产成人精品国内自产拍免费看| 色偷偷噜噜噜亚洲男人的天堂| 欧美第一黄网免费网站| 亚洲理论片在线观看| 日韩经典第一页| 国产一区欧美二区三区| 97国产精品久久| 欧美日韩国产综合视频在线观看中文| 国产精品青草久久久久福利99| 亚洲三级免费看| 欧美激情高清视频| 日韩在线免费av| 最近2019好看的中文字幕免费| 日韩亚洲欧美中文在线| 国产日韩av高清| 亚洲男女自偷自拍图片另类| 亚洲黄页网在线观看| 午夜精品福利电影| 亚洲欧美日韩国产精品| 日韩精品视频在线免费观看| 色青青草原桃花久久综合| 欧美激情视频一区二区三区不卡| 亚洲free性xxxx护士hd| 国产精品亚洲欧美导航| 欧美日韩在线视频观看| 色噜噜狠狠色综合网图区| 国产免费一区二区三区在线观看| 亚洲四色影视在线观看| 亚洲精品中文字幕女同| 国产91精品黑色丝袜高跟鞋| 中文字幕欧美亚洲| 国产区精品视频| 亚洲精品资源在线| 色综合老司机第九色激情| 日本老师69xxx| 国产精品极品美女在线观看免费| 91麻豆国产精品| 国产精品久久久久久久av电影| 91精品国产综合久久香蕉最新版| 亚洲视频在线观看网站| 欧美精品久久久久a| 日韩精品在线私人| 亚洲第一网站免费视频| 国产丝袜一区二区| 久久久中精品2020中文| 日韩在线精品一区| 欧美黑人狂野猛交老妇| 日韩欧美国产一区二区| 国产成人a亚洲精品| 欧美一区三区三区高中清蜜桃| 亚洲精品美女网站| 日本精品久久久久影院| 精品久久中文字幕久久av| 上原亚衣av一区二区三区| 国产精品第一第二| 日本19禁啪啪免费观看www| 韩国国内大量揄拍精品视频| 成人免费视频在线观看超级碰| 欧美乱大交xxxxx另类电影| 日韩免费在线看| 九九热这里只有精品免费看| 欧美国产日韩视频| 这里只有精品在线播放| 97人人模人人爽人人喊中文字| 国产精品久久久91| 国产xxx69麻豆国语对白| 97高清免费视频| 亚洲欧美制服第一页| 欧美大片网站在线观看| 亚洲国产精品久久精品怡红院|