我正在尝试创建一个带有地图的表单。您拖动标记,填写一些字段并提交。除了获取经度/经度记录/回声之外,我都可以使用。
数据将发送到.csv文件,然后发送电子邮件。我无法让lat / lng字段充当输入> php。
您可以在此处看到jsfiddle。
请注意,我将Mapbox用于地图,并且希望保留该地图。
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>Display latitude longitude on marker movement</title>
<meta name='viewport' content='initial-scale=1,maximum-scale=1,user-scalable=no' />
<script src='https://api.tiles.mapbox.com/mapbox.js/v2.0.1/mapbox.js'></script>
<link href='https://api.tiles.mapbox.com/mapbox.js/v2.0.1/mapbox.css' rel='stylesheet' />
<style>
body { margin:0; padding:0; }
#map { position:absolute; top:0; bottom:0; width:935px; height: 700px; z-index: -9;}
pre.ui-coordinates {
position:absolute;
bottom:10px;
left:10px;
padding:5px 10px;
background:rgba(0,0,0,0.5);
color:#fff;
font-size:11px;
line-height:18px;
border-radius:3px;
}
.formarea{
position:absolute;
background: #08080a;
top:0px;
left:680px;
padding: 10px;
height: 680px;
width: 240px;
border: 0px solid black;
opacity: .8;
color: white;
}
.inputfield{
width: 100%;
}
.textlarge{
resize: both;
vertical-align: top;
}
#latui, #lngui{
color: red;
}
</style>
</head>
<body>
<div class="formarea">
<form id="myform" name="form1" method="post" autocomplete="on" action="pdata.php">
<label><b>Marker Type</b></label>
<select name="markertype" class="inputfield" id="markertype">
<option selected="selected" disabled='disabled'>-</option>
<option value="sidewalk issues">sidewalk issues</option>
<option value="litter">litter</option>
<option value="graffiti">graffiti</option>
</select>
<label><b>Notes</b></label>
<input class="inputfield textlarge" name="notes" id="notes" type="text" pattern="[^,]*" title="You may be using an invalid text symbol"/>
<hr>
<label><b>Coordinates</b></label>
<p id="latui"></p>
<p id="lngui"></p>
<input class="button buttonmin success small" type="submit" name="Submit" value="✓ Submit Form">
</form>
</div>
<div id='map'></div>
<pre id='coordinates' class='ui-coordinates'></pre>
<script>
L.mapbox.accessToken = 'pk.eyJ1IjoiZWpzMDYwMDMiLCJhIjoicTJ6M29PTSJ9.EM3fFLHt6IQR17e7aSw7Sg';
var map = L.mapbox.map('map', 'examples.map-i86nkdio')
.setView([41.756971085614175, -72.6800537109375], 12);
//var coordinates = document.getElementById('coordinates');
var latui = document.getElementById('latui');
var lngui = document.getElementById('lngui');
var marker = L.marker([41.756971085614175, -72.6800537109375], {
icon: L.mapbox.marker.icon({
'marker-size': 'large',
'marker-color': '#f86767',
'marker-symbol': 'star'
}),
draggable: true
}).addTo(map);
// every time the marker is dragged, update the coordinates container
marker.on('dragend', ondragend);
// Set the initial marker coordinate on load.
ondragend();
function ondragend() {
var m = marker.getLatLng();
//coordinates.innerHTML = 'Latitude: ' + m.lat + '<br />Longitude: ' + m.lng;
latui.innerHTML = m.lat;
lngui.innerHTML = m.lng;
}
</script>
</body>
</html>
感谢您的帮助,
埃里克
参考方案
只需将<p>
更改为<input>
,例如this。
我正在使用使用Visual Studio模板创建的Web表单应用程序。模板具有一个内容占位符,该占位符被访问的任何页面的内容替换。有问题的页面有几个服务器控件,例如文本框,标签和按钮。当我单击我的更新按钮时,它可以正常工作,这些值会回传并更新数据库。我想在所有子页面上创建通用的登录提示。我的导航栏(位于我的母版页中)具有引导程序设置。我在导航栏中添加了一个下…
Telerik单选按钮所需的字段验证器 - javascript如何设置Telerik单选按钮所需的字段验证器?我想在按钮单击“ BtnSave”上设置必填字段验证器吗?请帮忙!<telerik:RadButton ID="radio_male" runat="server" ToggleType="Radio" AutoPostBack="fa…
用symfony隐藏树枝中的表格行 - javascript我正在开始编码。我正在使用Symfony 3.3我想用复选框隐藏(并显示)表上的a或某些特定行。我尝试使用javascript和jquery。我希望隐藏的行保持隐藏状态。我不知道该怎么做。这是我的树枝{% block body %} <div class="container"> <h3>List of produ…
表单不提交或按钮提交不起作用 - javascript据我所知,此代码必须有效,但是我编码时却无效问题在于该表单未提交。我该如何解决?选中时,我什至没有得到复选框的值。<table id="example" class="display" cellspacing="0" width="100%"> <thead&g…
在PHP文件中调用javascript函数并在加载HTML文件之后? - javascript我需要在我的php中调用js函数,但无法正常工作。有人可以告诉我我在做什么错吗?我该如何轻松地做到这一点?谢谢!我有三个文件: mail.php负责发送$ _POST的内容(工作正常)。我调用我的javascript函数来切换模式,具体取决于邮件是否已发送。 <? ... $response = $sendgrid->send($email);…