让前台的数组和后台数组一样即可,我试了<%=%>这种方法,不行,有没有谁遇到过相似的问题,求帮助下。
2条回答 默认 最新
关注 第一步:定义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前台页面代码 :
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])); }解决 无用评论 打赏 举报
悬赏问题
- ¥100 有人会搭建GPT-J-6B框架吗?有偿
- ¥15 求差集那个函数有问题,有无佬可以解决
- ¥15 【提问】基于Invest的水源涵养
- ¥20 微信网友居然可以通过vx号找到我绑的手机号
- ¥15 寻一个支付宝扫码远程授权登录的软件助手app
- ¥15 解riccati方程组
- ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
- ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
- ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
- ¥50 树莓派安卓APK系统签名