Javascript 传单映射无法识别来自代码隐藏中hiddenfieldvalue的数组变量
我试图在地图上显示sql server中的一些gps点。 我使用一些代码将我的点存储在一个隐藏值中Javascript 传单映射无法识别来自代码隐藏中hiddenfieldvalue的数组变量,javascript,leaflet,Javascript,Leaflet,我试图在地图上显示sql server中的一些gps点。 我使用一些代码将我的点存储在一个隐藏值中 string cs =ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString; using(SqlConnection conn = new SqlConnection(cs)) { conn.Open();
string cs
=ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString;
using(SqlConnection conn = new SqlConnection(cs))
{
conn.Open();
SqlCommand cmd = new SqlCommand("select directionX,directionY from DailyReport where date='1397/10/20'", conn);
SqlDataReader reader = cmd.ExecuteReader();
List<string> list = new List<string>();
while (reader.Read())
{
list.Add(reader["directionX"] +","+ reader["directionY"]);
HiddenField1.Value= string.Join(",", list.ToArray());
}
}
我已经使用“警报”函数检查了来自两个变量“arr”和“arr1”的值,它们是相同的。
我不知道如何使用我的hiddenfield值在传单地图上显示我的多段线。因此,将隐藏字段指定给Javascript数组的最终答案是
var arr1 = [<%=this.HiddenField1.Value%>];
var arr1=[];
您也许可以考虑重写C代码以输出JSON,这样更容易进入Javascript世界 在
arr1
的赋值周围有单引号,
,这将赋值一个字符串而不是数组。它们在你的“警惕”中看起来是一样的,但它们不是。删除单引号。@peeebee谢谢。我用[]替换了单引号,它也可以工作。
<script src="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.js"></script>
<script type="text/javascript" >
var x = document.getElementById('<%= txtX.ClientID %>').value;
var y = document.getElementById('<%= txtY.ClientID %>').value;
function showRout() {
//var mymap = L.map('mapid').setView([29.6208701, 52.5779901], 16);
//var x = 29.6208701;
var mymap = L.map('mapid').setView([x, y], 16);
L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {
attribution: '© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
}).addTo(mymap);
var arr = [
[29.6208701, 52.5779901],
[29.6195714, 52.5765552],
[29.6182244, 52.5752645]
];
var arr1 = '<%=this.HiddenField1.Value%>';
alert("value from hiddenfield is : "+arr1 +"and array written by hand is: " +arr);
var polyline = L.polyline(arr1).addTo(mymap);
}
</script>
var arr = [
[29.6208701, 52.5779901],
[29.6195714, 52.5765552],
[29.6182244, 52.5752645]
];
var arr1 = [<%=this.HiddenField1.Value%>];