@{
ViewBag.title = "地图导航";
} @model YT.XWAJ.Public.Application.MapNavigation.Dto.MapNavigationManagementDto
<div class="easyui-layout" data-options="fit: true,border: false">
<div data-options="region:'north'" style="height:80px">
<div class="form-show">
<div class="form" style="width: 100%;overflow:auto; padding:10px 15px 5px;">
<form id="form" method="post">
<div class="form-row col-xs-6 col-sm-6 col-md-6 col-lg-6">
<div class="form-row col-xs-6 col-sm-6 col-md-6 col-lg-6">
<div class="form-title">导航名称<span class="red"></span></div>
<div class="form-value">
<input class="easyui-validatebox form-control" type="text" name="MapNavigationName" value="@Model.MapNavigationName" />
</div>
</div>
<div class="form-row col-xs-6 col-sm-6 col-md-6 col-lg-6">
<div class="form-title">排序<span class="red"></span></div>
<div class="form-value">
<input class="easyui-validatebox form-control" type="number" name="Sort" value="@Model.Sort" />
</div>
</div>
</div>
</form>
</div>
</div>
</div>
<div region="center">
<!--地图-->
<div id="mmap" style="width: 100%;height: 100%;" param="tileUrl:googleWeb;bounds:67.5 0 157.5 67.5;backgroundColor:#FFFEE9;zoom:5;sliceZoom:5;maxZoom:19;minZoom:5;fullZoom:5;mapTilesWidth:2048;mapTilesHeight:1536;errorImg:/scripts/webgis/mxImg/blank.png;mapTilesExtendPixel:0"></div>
</div>
<div data-options="region: 'south',height: 45">
<div class="form-row dlgButRow">
<div class="pull-left">
<input type="checkbox" id="chked" checked="checked" class="chk" />确认并关闭窗口
</div>
<div class="pull-right">
<a href="javascript:void(0)" class="btn btn-success" onclick="javascript: window.page.onSave();"><span class="icon icon-save"></span>保存</a>
<a href="javascript:void(0)" class="btn btn-default" onclick="javascript: window.page.close();"><i class="icon icon-remove"></i>关闭</a>
</div>
</div>
</div>
</div>
@section scripts
{
<script src="/scripts/jquery/jquery-1.11.3.min.js"></script>
<script src="/scripts/common/base.js"></script>
<!-- 地图 -->
<script src="/scripts/webgis/mxlib/MapHost.js"></script>
<script src="/scripts/webgis/mxlib/snap.svg-min.js"></script>
<script src="/scripts/webgis/mxlib/api.min.js"></script>
<script src="/scripts/webgis/mxlib/Mapv.min.js"></script>
<script src="/scripts/webgis/mxlib/RectSearchCmd.js"></script>
<script src="/scripts/map/mapApi.js"></script>
<script src="/visualization/js/map.js"></script>
<script type="text/javascript">
(function () {
var config = {
/*是否显示CAD*/
showCAD: false,
/*地图显示模型*/
mapModel: 'satellite', //"web","satellite","proCad"
/*地图初始参数*/
mapParams: {
x: 119.47353798201721, y: 36.84729076181995,
zoom: 12, maxZoom: 14,
control: { enabled: true, position: MX_ANCHOR_TOP_LEFT }
},
labelStyle: {
background: 'transparent',
color: "#33ffbb",
fontSize: "16px",
border: '0px solid #ccc',
height: "20px",
lineHeight: "20px",
fontFamily: "微软雅黑" },
markerType: {
sensor: "传感器",
video: "视频",
enterprise: "企业",
danger: "危化品",
hazard: "危险源",
shelter: "避难场所",
firehouse: "消防队",
medical: "医疗机构",
communication: "通讯保障",
technique: "技术支持",
transport: "运输保障"
}
};
var page = {
load: function () {
page.initMap();//显示地图
},
//创建和初始化地图函数:
initMap:function () {
var maps = page.maps = new visualMap({
el: 'mmap',
mapParams: config.mapParams,
showCAD: config.showCAD,
labelStyle: config.labelStyle,
markerType: config.markerType,
mapModel: config.mapModel
}); },
//保存
onSave: function () {
//获取中心点及缩放级别
var zoom = page.maps.maps._map.getZoom(),
centerPoint = page.maps.maps._map.getCenter();
//console.log(zoom);
//console.log(centerPoint);
var data = $("#form").serializeArray();
data.push(
{
name: 'Hierarchy',
value:zoom
},{
name: "CentraLongitude",
value: centerPoint.x
}, {
name: "CenterLatitude",
value: centerPoint.y
}
);
console.log(data); /*
$.post('/api/services/public/mapNavigation/EditMapNavigationManagement',
{
MapNavigationName: $('input[name="MapNavigationName"]').val(),
CentraLongitude: centerPoint.x,
CenterLatitude: centerPoint.y,
Hierarchy: zoom,
Sort: $('input[name="Sort"]').val()
},
function (result) {
$.closeParentWindow();
});
*/ $.ajax({
type: "POST",
url: '/api/services/public/mapNavigation/EditMapNavigationManagement',
data: data,
success: function (result) {
$.closeParentWindow();
}
}); }, //刷新
onRefresh: function() {
$("#datagrid").datagrid('reload');
},
//取消
close: function () {
$.closeParentWindow();
}
};
$(page.load);
window.page = page;
}());
</script>
}

上边代码无法正常运行。

但是期间遇到一个问题:就是页面只把表单中的数据遍历了,地图中获取的值没有传回后台, 因此我们有两种办法可以实现将值传回后台: 方法如下

1、这种方式如果穿的之多的情况下 不太好。

$.post('/api/services/public/mapNavigation/EditMapNavigationManagement',
{
MapNavigationName: $('input[name="MapNavigationName"]').val(),
CentraLongitude: centerPoint.x,
CenterLatitude: centerPoint.y,
Hierarchy: zoom,
Sort: $('input[name="Sort"]').val()
},
function (result) {
$.closeParentWindow();
});

2、下边的方法是给data.push元素  以下push了三个对象。 (需看接口返回的格式)

//保存
onSave: function () {
//获取中心点及缩放级别
var zoom = page.maps.maps._map.getZoom(),
centerPoint = page.maps.maps._map.getCenter();
//console.log(zoom);
//console.log(centerPoint);
var data = $("#form").serializeArray();
data.push(
{
name: 'Hierarchy',
value:zoom
},{
name: "CentraLongitude",
value: centerPoint.x
}, {
name: "CenterLatitude",
value: centerPoint.y
}
);
console.log(data);
$.ajax({
type: "POST",
url: '/api/services/public/mapNavigation/EditMapNavigationManagement',
data: data,
success: function (result) {
  $.closeParentWindow();
   }
});
}

以上代码均可实现给表单添加对象元素。

Js 向表单中添加多个元素的更多相关文章

  1. 在HTML文件的表单中添加{%csrf_token%}便可以解决问题

    原因是django为了在用户提交表单时防止跨站攻击所做的保护 只需在HTML文件的表单中添加{%csrf_token%}便可以解决问题 ------------------------if判断{% i ...

  2. 如何在启用SharePoint浏览器功能的InfoPath 表单中添加托管代码以动态地加载并显示图片

    InfoPath 的浏览器表单不支持加载并显示图片,当然在模板中可以插入图片,但是如果想显示数据库的一幅图片,或是动态加载一张图片就无能为力了. 基实这个问题可以通过在浏览器表单中使用: " ...

  3. Spring Security在标准登录表单中添加一个额外的字段

    概述 在本文中,我们将通过向标准登录表单添加额外字段来实现Spring Security的自定义身份验证方案. 我们将重点关注两种不同的方法,以展示框架的多功能性以及我们可以使用它的灵活方式. 我们的 ...

  4. js:表单校验(获取元素、事件)

    1.表单校验步骤 (1)确定事件(submit事件),创建一个函数并和该事件绑定. (2)书写函数对输入的数据是否合法进行校验(需要设定ID并通过ID来获取用户输入的数据的值). (3)输入的信息合法 ...

  5. js+jquery动态设置/添加/删除/获取元素属性的两种方法集锦对照(动态onclick属性设置+动态title设置)

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html140 ...

  6. js 交换表单中值

    <html> <head> <meta charset="utf-8" /> <script type="text/javasc ...

  7. js 提交表单添加csrf

    function post(path, shipmentMap, method) { method = method || "post"; // Set method to pos ...

  8. JS验证表单中TEXT文本框中是否含有非法字符

    <form id="form" action="" method="post"> <input type="hi ...

  9. 原 form 表单中 disabled 属性的元素不参与表单提交

    https://blog.csdn.net/benben683280/article/details/79173336

随机推荐

  1. java基础巩固之java实现文件上传

      对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用Servlet获取上传文件的输入流然后再解析里面的请求参数是比较麻烦,所以一般选择采用apache的开源工具com ...

  2. RabbitMQ fanout类型的Exchange

    就目前来说,Exchange是与消息发送端有关的,因为它可以指定将消息发送到哪个或哪些队列中. 本篇文章介绍的fanout类型就是指定将消息群发到与Exchange绑定的所有队列中. fanout这个 ...

  3. let var区别

    function varTest() { var x = 1; if (true) { var x = 2; // 同样的变量! console.log(x); } console.log(x); } ...

  4. 在MATLAB中安装MinGW-w64 C/C++ 编译器的方法

    reference:http://blog.sina.com.cn/s/blog_167bbdec10102x113.html 在MATLAB中编译C/C++ 文件时出现以下情况: 说明缺少MinGW ...

  5. Class file collision

    ecplise报错,提示:Class file collision (类文件冲突) 原因是:文件保存(编译)后,生成了class文件起了冲突,windows 系统认为Test.class 和test. ...

  6. 实现html转png

    公司要求将一些重要数据全部以图片的形式放在官网上,防止网络爬虫. 之前都是UI作图,人工上传,为了解放生产力,于是我们程序处理. 步骤: 1.html得到与原图一致的图片(交给前端处理) 2.html ...

  7. U盘如何去除写保护

    用一个简单而粗暴的方法去除U盘写保护: www.upantool.com/hfxf/xiufu//FormatTool.html#softdown 没有比这个更牛的软件了.

  8. js 唤起APP

    常常有这样的场景,咱们开发出来的APP需要进行推广,比如在页面顶部来一张大Banner图片,亦或一张二维码.但往往我们都是直接给推广图片加了一个下载链接(App Store中的).所以咱们来模拟一下用 ...

  9. mvc项目中实现备份数据库(sqlserver2005)

    功能要求:mvc项目,实现数据库备份(bak文件) 实现步骤:<a id="backupDB" href="javascript:" >数据库备份& ...

  10. 使用libcurl下载https地址的文件

    使用libcurl下载https地址的文件 void downLoadFile(std::string filename, std::string newFilename) { CURL *curl_ ...