2013-08-15 7 views
7

कृपया, google geocoder.geocode के साथ मेरी सहायता करें। मुझे पता है कि यह फ़ंक्शन एसिंक्रोनस चलाता है लेकिन मुझे नहीं पता कि इसे कैसे संभालना है।google geocoder.geocode के लिए कैसे प्रतीक्षा करें?

परिणाम के लिए प्रतीक्षा कैसे करें? यहां मेरा कोड है: मेरा कोड geocode.geocoder की प्रतीक्षा नहीं करता है, इसलिए मुझे भौगोलिक स्थान के बजाय अपरिभाषित किया जाता है।

<!DOCTYPE html> 
<html>  
    <head>   
    <title>Geocoding service  
    </title>   
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />  
    <meta http-equiv="content-language" content="cs" />   

    <meta name="viewport" content="initial-scale=1.0, user-scalable=no">    
    <link href="http://code.google.com//apis/maps/documentation/javascript/examples/default.css" rel="stylesheet">  
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>  
<script> 

function codeAddress(callback) { 

    var address = document.getElementById('address').value; 
    geocoder = new google.maps.Geocoder(); 
    geocoder.geocode({ 'address': address}, function(results, status) { 
    if (status == google.maps.GeocoderStatus.OK) { 
    } else { 
     alert('Geocode was not successful for the following reason: ' + status); 
    } 
    },callback); 
} 


function geocoder(result) { 
alert(codeAddress()); 
} 

function button() { 
    geocoder(codeAddress) ; 
    } 



    </script>  
    </head>  
    <body>   
    <div id="panel">    
     <input id="address" type="textbox" value="address">    
     <input type="button" value="Go" onclick="button()">   
    </div>   
    <div id="map-canvas">  
    </div>  
    </body> 
</html> 

उत्तर

0

मैंने पाया समाधान वेब पेज http://recurial.com/programming/understanding-callback-functions-in-javascript/ जहां कदम से कदम कॉलबैक समझाया है धन्यवाद।

यहाँ काम कर रहा है कोड:

<!DOCTYPE html> 
<html>  
    <head>   
    <title>Geocoding service  
    </title>   
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />  
    <meta http-equiv="content-language" content="cs" />   

    <meta name="viewport" content="initial-scale=1.0, user-scalable=no">    
    <link href="http://code.google.com//apis/maps/documentation/javascript/examples/default.css" rel="stylesheet">  
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>  
<script> 

function codeAddress(callback) { 

    var address = document.getElementById('address').value; 
    geocoder = new google.maps.Geocoder(); 
    geocoder.geocode({ 'address': address}, function(results, status) { 
    if (status == google.maps.GeocoderStatus.OK) { 
    souradnice = [results[0].geometry.location.lat(),results[0].geometry.location.lng()]; 
    callback(souradnice); 
    } else { 
     alert('Geocode was not successful for the following reason: ' + status); 
    } 
    }); 
} 


function gogo(){ 
codeAddress(function(num) { 
    alert(num); 

}); 
} 






    </script>  
    </head>  
    <body>   
    <div id="panel">    
     <input id="address" type="textbox" value="address">    
     <input type="button" value="Go" onclick="gogo()">   
    </div>   
    <div id="map-canvas">  
    </div>  
    </body> 
</html> 
+0

संख्या समारोह पैरामीटर में यहाँ क्या है – Techy

संबंधित मुद्दे