C#如何将数组传给javascript
从TXT读取经纬度坐标,将它们编成数组,然后传给webbrowser里显示的一个GoogleMap的html,这个网页是用javascript写的,问题是怎么传给java...
从TXT读取经纬度坐标,将它们编成数组,然后传给webbrowser里显示的一个GoogleMap的html,这个网页是用javascript写的,问题是怎么传给javascript里面的function:
var Point= new GLatLng(30.2884, 120.1340)让数组的连续两个值可以赋给这样的Point~
(我现在没分,不过过几天我追加分100~)
具体一点,最好能把C#和javascript里要添加的代码让我看一下~ 展开
var Point= new GLatLng(30.2884, 120.1340)让数组的连续两个值可以赋给这样的Point~
(我现在没分,不过过几天我追加分100~)
具体一点,最好能把C#和javascript里要添加的代码让我看一下~ 展开
3个回答
展开全部
第一步:定义cs数组
cs文件里后台程序中要有数组,这个数组要定义成公共的数组。
public string[] lat = null;
public string[] lng = null;
第二步:给cs数组赋值
cs数组的值一般都是从数据库中取到的,也可以自己定义
第三步:将cs数组赋给前端的js数组
这个步骤是关键,选用的方法就是<%=cs数组%>。这样模糊的说法也是百度得到的,赋值会用到循环,即会一个元素一个元素的赋值。
示例:
后台cs代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.OleDb;
using System.Data;
using System.Collections;
public partial class VideoSource : System.Web.UI.Page
{
public string[] lat = null;//存放纬度值
public string[] lng = null;//存放经度值
public int lng_len = 0;//用于获得数组长度
public int k = 0;//用于赋值循环
protected void Page_Load(object sender, EventArgs e)
{
ArrayList lng_list = new ArrayList();
ArrayList lat_list = new ArrayList();
OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Server.MapPath("App_Data/Database1.accdb"));
con.Open();
string sql = "select * from tb_videos";
try
{
OleDbDataAdapter gh = new OleDbDataAdapter(sql, con);
DataSet ds = new DataSet();
gh.Fill(ds);
con.Close();
foreach (DataRow DR in ds.Tables[0].Rows)
{
lng_list.Add(DR[2].ToString());
lat_list.Add(DR[3].ToString());
}
}
catch
{
con.Dispose();
}
lng = (string[])lng_list.ToArray(typeof(string));
lat = (string[])lat_list.ToArray(typeof(string));
lng_len = lng_list.Count;
}
前台aspx代码
<script type="text/javascript">
var jingdu = new Array();
var weidu = new Array();
<%
for(int k=0;k<lng_len;k++){
%>
jingdu.push("<%=lng[k]%>");
weidu.push("<%=lat[k]%>");
<%
}
%>
var latlng=[];
for(var i=0;i<jingdu.length;i++){
latlng.push(new google.maps.LatLng(jingdu[i],weidu[i]));
}
</script>
展开全部
比如说 吧TXT读取的坐标放到hiddenfield里
然后将hiddenfield的ClientID传到function里,在用javascript读取hiddenfield的value.
然后将hiddenfield的ClientID传到function里,在用javascript读取hiddenfield的value.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个有很多种方式:
1. 使用querystring传值,比方说一个URL=a.html?X=30.2884&Y=120.1340,用脚本读取querystring就可以获取值了。
2. 使用Ajax
对于坐标的输出可以输出json对象,推荐使用json格式,转换起来方便,用C#生成json对象 {X:30.2884, Y:120.1340},ajax读取然后解析就可以了
也可以使用XML作为坐标表示,具体格式自己定义,C#输出xml也很方便
1. 使用querystring传值,比方说一个URL=a.html?X=30.2884&Y=120.1340,用脚本读取querystring就可以获取值了。
2. 使用Ajax
对于坐标的输出可以输出json对象,推荐使用json格式,转换起来方便,用C#生成json对象 {X:30.2884, Y:120.1340},ajax读取然后解析就可以了
也可以使用XML作为坐标表示,具体格式自己定义,C#输出xml也很方便
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询