2016-08-01 11 views
0

htmlページに表示する都市名を返すにはどうしたらいいですか?関数を返すにはどうすればいいですか

My機能

function getCity(latitude, longitude){ 

var geocoder; 
geocoder = new google.maps.Geocoder(); 
var latlng = new google.maps.LatLng(latitude, longitude); 
geocoder.geocode(
    {'latLng': latlng}, 
    function(results, status) { 
     if (status == google.maps.GeocoderStatus.OK) { 
       if (results[0]) { 
        var add= results[0].formatted_address ; 
        var value=add.split(","); 

        count=value.length; 
        country=value[count-1]; 
        state=value[count-2]; 
        city=value[count-3]; 
        alert("city name is: " + city); 
        return city; 
       } 
     } 

    } 
); 

アラートが正常に動作しています。 HTMLで

私はそのように、この関数を呼び出した:

<script> getCity("<%= map.latitude %>","<%= map.longitude %>")</script> 

事前にTKS。

+0

「geocode」は非同期呼び出しです。 – Marty

答えて

0
にコードを変更し

:それはどのようなあなたのJavaScript関数を返すドキュメントに書き込みます

<script> document.write(getCity("<%= map.latitude %>","<%= map.longitude %>"))</script> 

+0

"undefined"を返しています –

+0

'document.write'は' getCity'への呼び出しによって返された値を表示します。 nullを表示すると、関数コードに何か問題があります。問題がどこにあるかを知るには、デバッグする必要があります。 – Jocelyn

0

このように、あなたのHTMLにDIVを作成します。アラートが正常に動作した場合はそれが返さ意味

document.getElementById("cityName").innerHTML(city); 
0

<div id="cityName"></div> 

とJavaScriptで、このコードで "警告" を置き換えます値はtrueです。 次に、ドキュメントの本文のどこにでも都市名を返す関数を呼び出すことができます。 また、関数は文字列を返すだけなので、新しい変数に割り当てるだけで、返された関数の都市文字列に情報を追加する必要があります。

Like ** function city() 都市名の値を返します。

var cityname = city()+ '詳細情報';

**

+0

お手伝いをしています。オリジナルの関数コードを参照して適用してください。 – Zuckerberg

関連する問題