2010-10-01 27 views
2

Je fais partie d'un projet qui nécessite une fonctionnalité de remplissage automatique ou de suggestion automatique pour les adresses postales (quelque chose de similaire à ce que Google Maps a). Au fur et à mesure que l'utilisateur commence à saisir le numéro, google commence à suggérer des options valides. Je voudrais savoir s'il y a un api (même commercial) disponible sur le marché.Google maps comme auto-complétant ou auto-suggérant l'API pour les adresses postales

Remarque: Je suis et non à la recherche d'une API de validation d'adresse.

Je pourrais aussi acheter une base de données d'adresses et l'implémenter par-dessus. Mais c'est beaucoup de frais généraux de développement impliqués si nous avons besoin de construire quelque chose de robuste et sophistiqué. Tout bon pointeur aidera.

Merci Bala

Répondre

3

Cela semble vous donner une solution similaire à celle que vous recherchez. Si vous remplacez l'événement on_click par le code Javascript onkeyup, vous devriez alors pouvoir vérifier l'adresse en temps réel.

Il s'agit d'un guide d'intégration étape par étape décrivant comment ajouter un localisateur d'adresses RapidAddress basé sur un code postal à un site Web HTML. Nous vous recommandons de lire le guide de l'utilisateur JavaScript en premier. Étape # 1 Téléchargez la dernière version de la classe JavaScript dans la section des téléchargements. Vous pouvez également utiliser le pack d'intégration, il contient des pages HTML prêtes à l'emploi qui peuvent être utiles comme point de départ. Téléchargez les fichiers JavaScript crafty_postcode.class.js de votre serveur Web et le référencer dans votre code HTML, vous pouvez avoir à utiliser des chemins relatifs ou absolus dans la propriété src:

<script type="text/javascript" charset="ISO-8859-1" src="crafty_postcode.class.js"> 
</script> 

REMARQUE: la « ISO-8859-1 "bit est important car le script JS est compressé. Étape # 2 Créer et configurer l'objet JavaScript:

<script> 
    var cp_obj = CraftyPostcodeCreate(); 
    cp_obj.set("access_token", "xxxxx-xxxxx-xxxxx-xxxxx"); // your token here 
    cp_obj.set("result_elem_id", "crafty_postcode_result_display"); 
    cp_obj.set("form", "address"); 
    cp_obj.set("elem_company" , "companyname"); 
    cp_obj.set("elem_street1" , "address1"); 
    cp_obj.set("elem_street2" , "address2"); 
    cp_obj.set("elem_street3" , "address3"); 
    cp_obj.set("elem_town"  , "town"); 
    cp_obj.set("elem_county" , "county"); 
    cp_obj.set("elem_postcode" , "postcode"); 
</script> 

Étape # 3 Créer un formulaire d'adresse en HTML:

<form method="post" name="address"> 
Postcode:<br/> 
<input type="text" name="postcode"/>&nbsp;&nbsp;&nbsp; 
<button type="button" onclick="cp_obj.doLookup()">Find Address</button><br/> 
<span id="crafty_postcode_result_display">&nbsp;</span><br/> 
Company:<br/> 
<input type="text" name="companyname"/><br/> 
Address:<br/> 
<input type="text" name="address1"/><br/> 
<input type="text" name="address2"/><br/> 
<input type="text" name="address3"/><br/> 
Town:<br/> 
<input type="text" name="town"/><br/> 
County:<br/> 
<input type="text" name="county"/> 
</form> 

NOTE: "companyname", "adresse2/3" et " comté "sont facultatifs, vous pouvez laisser ces champs si cela convient à votre site. N'oubliez pas de les supprimer également de la configuration JavaScript à l'étape 2. Par exemple si vous ne voulez pas le champ county: cp_obj.set ("elem_county", ""); Notez le bouton "Rechercher une adresse", l'action onclick appelle la méthode doLookup(). Les résultats de l'adresse (ou un message d'erreur) seront placés dans l'élément avec id = "crafty_postcode_result_display". Tout est fait! Si les choses ne fonctionnent pas pour quelque raison que ce soit, envoyez-nous un message ou un message d'erreur. Nous serons heureux d'aider. Vous pouvez également lire le guide de l'utilisateur JavaScript, si ce n'est déjà fait.

Comme à l'adresse:

http://www.craftyclicks.co.uk/web-service/docs/javascript-address-finder-how-to-add-rapidaddress

+0

c'est ce que je cherchais. merci – gfivehost

1

Vous pouvez utiliser googles geo autocomplete api

http://code.google.com/p/geo-autocomplete/

Cela vous donnera la même autocomplete pour les endroits que vous obtiendriez sur googlemaps .

+0

J'ai fait un peu de recherche à ce sujet et il semble que j'aurais besoin d'une carte pour tracer les résultats. Sinon, cela signifierait une violation en termes d'utilisation. Je ne suis pas sûr que ce soit entièrement vrai. De plus, une solution javascript ne fonctionnera pas car elle sera implémentée dans une application WPF. J'aurais dû le mentionner plus tôt. Désolé pour ça. – Bala

+0

vous pourriez avoir la carte dans un div lol caché;) comme pour WPF je ne suis pas sûr mais je sais que l'auto complète est assez facile là-bas. Mes suggestions sont que vous découvrez quel message l'API géo-autocomplete envoie à google et répliquez-le dans votre application WPF en évitant complètement le besoin. – DeliveryNinja

0

Here's a cheap database y compris le logiciel et l'API pour les explorations interactives.Cependant, la suggestion automatique/complète est une technique sujette à erreur as discussed here et évidente quand vous essayez des recherches comme trouver quelque chose sur l'une des variations zillion de la rue Peachtree à Atlanta. Si vous devez utiliser l'option suggérer/compléter automatiquement, conservez la validation de l'adresse en tant que sauvegarde lorsque vous réalisez combien de fois le résultat obtenu est erroné.