≪GoogleMapAPI困り事≫latはnullまたはオブジェクトではありませんエラーについて

159 views
Skip to first unread message

ゆうた

unread,
Feb 3, 2009, 8:58:33 AM2/3/09
to Google-Maps-API-Japan
こんばんは。

GoogleMap APIカスタマイズで一か所エラーが出てしまい、いろいろ検索したのですが、解決できません。
どなた様か素敵な解決法をご教授していただけませんでしょうか?

「エラー状況について」
IE7で閲覧すると「latはnullまたはオブジェクトではありません」とアラートが表示されてしまいます。

▼下記コードをindex.htmlなどで保存してご確認いただけます。
////////////////////////////////////////////////////////////////////////////////////
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Google Maps JavaScript API Example - simple</title>
<script src="http://maps.google.com/maps?file=api&v=2&key=aaaaa"
type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div id="map" style="width:600px; height:500px"></div>
<script type="text/javascript">
//<![CDATA[

var map = null;
var geocoder = null;

geocoder = new GClientGeocoder();

//デフォルトマップセンターをセット(varでグローバル変数に設定)
var address = '加須市';
var forcus = 12;

map = new GMap2(document.getElementById("map"));
//右下画面を追加
map.addControl(new GOverviewMapControl());
//コントローラーを追加
map.addControl(new GLargeMapControl());
//衛星・地図・ハイブリッドメニューを追加
map.addControl(new GMapTypeControl());

geocoder.getLatLng(address,onGeocoding);
function onGeocoding(result){
if(result){
//取得した位置に移動(forcusはグローバル変数)
map.setCenter(result,forcus);
}
else{
window.alert("見つかりません");
}
}


//マップにマーカーを設定
function markerSet(address,html){
geocoder.getLatLng(
address,
function(point) {
var marker = new GMarker(point);
//マーカーをマップにセット
map.addOverlay(marker);
//マーカーにイベントを生成
GEvent.addListener(marker, 'click', function() {
marker.openInfoWindowHtml(html);
});

}
);
}
//]]>
</script>





<script>
<!--
markerSet('埼玉県加須市中央一丁目1番15号','<strong>加須駅</strong><br/>埼玉県加須市中央一丁目1番15
号');
//-->
</script>


<script>
<!--
markerSet('埼玉県鴻巣市本町4-3-23','<strong>アサヒ印刷</strong><br/>埼玉県鴻巣市本町
4-3-23');
//-->
</script>


<script>
<!--
markerSet('東京都渋谷区代々木1-53-1','<strong>山野美容専門学校</strong><br/>東京都渋谷区代々木
1-53-1');
//-->
</script>


<script>
<!--
markerSet('埼玉県北葛飾郡鷲宮町中妻1020','<strong>埼玉県立鷲宮高等学校</strong><br/>埼玉県北葛飾郡鷲宮
町中妻1020');
//-->
</script>


<script>
<!--
markerSet('加須市大字北小浜70','<strong>加須市立昭和中学校</strong><br/>加須市大字北小浜70');
//-->
</script>


<script>
<!--
markerSet('加須市本町4番25号','<strong>加須小学校</strong><br/>加須市本町4番25号');
//-->
</script>


<script>
<!--
markerSet('加須市久下6-6-24','<strong>中村祐太自宅</strong><br/>加須市久下6-6-24');
//-->
</script>

</body>
</html>
Message has been deleted

YON

unread,
Feb 3, 2009, 7:33:01 PM2/3/09
to Google-Maps-API-Japan
はじめまして、
たまたま
埼玉県加須市中央一丁目1番15号
が、検索出来ない(ステータス602)ためだと思います。
漢字の×丁目はだめっぽいです。過去書き込みにもありました。
http://groups.google.com/group/Google-Maps-API-Japan/browse_thread/thread/34a383696456b4ae?hl=ja#
表記を
埼玉県加須市中央1丁目1番15号
とすれば、検索できます。
geocoder.getLatLngの結果を判定を入れて、成功しなかった
場合の処理も考慮した方がよいと思います。

ゆうた

unread,
Feb 3, 2009, 9:07:50 PM2/3/09
to Google-Maps-API-Japan
YONさまへ

なるほど、そのとおりでした。。。。
漢字を数字に直したらエラーが表示されなくなりました!!
ご教授頂き、本当に有難うございます。

結果も判定入れて成功しない場合はアラート出すような記述にしました★

感謝感謝です!!
Reply all
Reply to author
Forward
0 new messages