DevTrain Startseite Visual Studio 1 Magazin  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren



 

Forum: JavaScript | Thema: Problem mit GeoDB | Von: Hack Reb ( 23.02.2005 17:09)

Hallo zusammen,
Ich habe folgendes Problem:

Es gibt ein tolles JavaScript-Tool von Thorsten Sprenger mit dem Namen ZipToCity. Vielleicht kennt das ja jemand. Hinterlegt sind hierbei PLZs aus Deutschland. Sinn der Sache ist bei der Registrierung nur die PLZ anzugeben und dann automatisch über ein JavaScript den Ort in ein Textfeld einzutragen.

Die HTML Files sehen so aus:

<html><head><script language=javascript><!--
try {if(parent.zipcode) {
var z=new Array("4");
z["01069"]="Dresden";
z["01097"]="Dresden";
z["01099"]="Dresden";

if(z[parent.zipcode]) parent.outputfield.value=z[parent.zipcode];}}catch(e){}
//--></script></head></html>

Der JSScript Code folgendermaßen:

//file: ziptocity.js Version 1.2, 16/08/2004 by Thorsten Sprenger

var outputfield;
var zipcode;

function ziptocity(inputfield_zip,inputfield_city,inputfield_country){
try {
outputfield = getElementById(inputfield_city);
if(inputfield_country)
country = getElementById(inputfield_country).value;
else
country = "de";


zipcode = getElementById(inputfield_zip).value;
// trim out spaces
while (zipcode.indexOf(' ') != -1) {
var i = zipcode.indexOf(' ');
zipcode = zipcode.substring(0,i)+ zipcode.substring(i+1);
}
var a = zipcode.substring(0,1);
var b = zipcode.substring(0,3);
var rootPath = ziptocityframe.location.href.substring(0,ziptocityframe.location.href.indexOf('stuff/postleitzahlen/'));
var path = rootPath + 'stuff/postleitzahlen/'+country+"/"+a+"/"+b+".html";
ziptocityframe.location.href=path;
}catch(e) {}
}

function getElementById(id){
var element=document.getElementById && document.getElementById(id) || document.all && document.all(id);
return element;
}

Das ganze wird dann aufgerufen:

<iframe name="ziptocityframe" src="{$TPL_COMPATH}spacer.gif" frameborder="0" height="0" width= "0"></iframe>
Postleitzahl:
<input type="text" name="zipcode" id="zipcode" size="5" onChange="javascript:ziptocity('zipcode','cityname')" /> <br>
Ort: <input type="text" name="cityname" id="cityname" size="30"><br>


Was ich nun möchte ist, daß anstelle des Textfields cityname ein Menü kommt in dem die passenden Orte drin stehen. Ich habe ihm darauf hin eine Mail geschrieben und er hat folgendes geantwortet:

Du müsstest in allen Dateien ziptocity/de/x/xyz.html statt der Zeile
parent.outputfield.value=z[parent.zipcode];
einen Codeschnipsel einfügen, der Deine Listbox füllt mit den Einträgen des z-Arrays,
(also in einer Schleife per DOM jeden Ort-Eintrag zum Listbox- <SELECT>-Element hinzufügt).



Nun ist es so, daß ich mich mit JavaScript nicht sonderlich auskenne - kann mir vielleicht jemand helfen, wie sowas aussehen müsste?

Viele Grüße

Hacki


Betreff Von Datum
Re: Problem mit GeoDB
Hallo Hacki,<br><br>hast du das Problem inzwischen gelöst? Hätte Interesse an einer Lösung, weil ich genau das gleiche Problem habe.<br><br>Schöne Grüße,<br>Christoph
G. Guest 15.09.2005 01:16

Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!

 Betreff:
 Nachricht: Den Beitrag finden Sie nun unter: http://beta.devtrain.de/foren Die Benutzerdaten und Foreninhalte von beta.devtrain.de und www.devtrain.de sind die selben.
Sie können sich dort sogar per RSS über neue Inhalte informieren lassen.
Bei Problemen bitte direkt Mail an asp [AT] ppedv.de.

 Signatur:

  



Login
Username:


Passwort:






Passwort vergessen?

Visual Studio 1 Magazin

© Copyright 2003 ppedv AG