gpt4 book ai didi

javascript - setData - 如何从代码隐藏中的函数传递我的数据?

转载 作者:行者123 更新时间:2023-11-30 00:23:41 29 4
gpt4 key购买 nike

我正在使用 Heatmap.js 库在 Google map 上创建 map 叠加层。只要我在标签中对数据进行硬编码,它就可以很好地工作。

<script type="text/javascript">
var myLatlng = new google.maps.LatLng(35.20, -90.50);
var myOptions = {
zoom: 5,
center: myLatlng
};

map = new google.maps.Map(document.getElementById("MyMap"), myOptions);
// heatmap layer
heatmap = new HeatmapOverlay(map,{
radius: 15,
maxOpacity: 0.6,
minOpacity: 0.6,
blur: 0,
gradient: {'0':'Green', '0.75':'yellow', '1':'Red'},
scaleRadius: false,
useLocalExtrema: false,
latField: 'lat',
lngField: 'lng',
valueField: 'value'
});

var init = { max: 2, data: [{ lat: 35.6408, lng: -90.7728, value: 1.2},
{ lat: 37.6408, lng: -92.7728, value: 4.8},
{ lat: 36.9438, lng: -91.7428, value: 0.2}]};
heatmap.setData(init);
</script>

但是,我想做的是使用 JQuery 在代码隐藏 (VB) 中调用一个函数,并使用返回值来提供数据。像这样:

$(document).ready(function () {
$("#updateMap").click(function () {
$.ajax({
type: "POST",
dataType: "json",
url: "Default.aspx/getPIAFData",
data: "{}",
contentType: "application/json; charset=utf-8",
success: function (data) {
heatmap.setData({ max: 2, data: [data] });
},});});});

我在后面的代码中的函数返回一个字符串,我可以看到(通过 alert();)它返回了正确的字符。但是,Heatmap.js setData 函数需要一个对象数组:

var data = {
max: 10,
data: [{datapoint1, datapoint2, datapoint3, etc}]};

每个数据点包含 {lat: 1234, lng: 1234, value: 1234}。

我需要找到一种方法将返回字符串解析为 Heatmaps.js 的正确格式,或者更改我在后面代码中的函数以返回正确的对象数组。有使用 Heatmaps.js 库从另一个函数(代码隐藏)获取数据的经验的人吗?

非常感谢。电脑

最佳答案

经过大量的尝试和错误,我能够让它工作。本质上,这是它现在的工作方式:

  • 我的代码隐藏 (VB) 函数仍然返回一个字符串。但是,在构建字符串时我不得不使用两个双引号。我交替使用双引号和单引号,但一点用都没有。
  • 一旦我在 Javascript 端收到字符串消息,我就会使用 JSON.parse(msg.d),其中 msg 是 VB 函数返回的字符串。

关于javascript - setData - 如何从代码隐藏中的函数传递我的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32235285/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com