0
我有一個JavaScript函數,它檢查經緯度並在頁面加載時運行。它調用lat long的頁面方法。在頁面方法中,我使用RegisterClientScriptBlock來設置一堆變量,並返回一串javascript以顯示使用這些變量的地圖。地圖加載,但我得到一個錯誤,它期望的變量是未定義的。javascript callback上的registerclientscriptblock
<script type="text/javascript">
function check() {
if (navigator.geolocation) {
var panelProg = $get('progress');
panelProg.style.display = '';
var panelProg = $get('map');
panelProg.style.display = 'none';
navigator.geolocation.getCurrentPosition(function (position) {
// Access them accordingly
PageMethods.SetSession(position.coords.latitude, position.coords.longitude, callBack);
});
}
}
function callBack(result) {
eval(result);
}
</script>
[WebMethod]
public static string SetSession(string latval, string longval)
{
//does work, calls RegisterClientScriptBlock to set a bunch of array variables
//var lats = new Array(); var longs = new Array(); etc...
return "displaymap(" + latval + "," + longval + ");";
}
謝謝,我試過了,但變量仍未定義。這是因爲displaymap函數在一個單獨的文件中? – 2013-03-01 17:53:44