erzeuge mit ASP einen JavaScript-Code, der die entsprechenden
Informationen enthält. Eine Online-Verbindung ist mit JavaScript
nicht möglich.Cheatah
»»Äh, und wie? Beispiel bitte.
thanx Chris
einfach mal folgende zeilen als denkanstoss nehmen:
(wenn Du mit asp dropdownlisten erzeugen kannst,
sollte Dir das generieren von JavaScript-code
ebenfalls gelingen)
Du musst Dir mit hilfe von JavaScript ein abbild
Deiner ACCESS-datenbank auf dem client schaffen;
diese loesung ist aber nur zu empfehlen, wenn
die menge der darzustellenden daten 500 datensaetze
nicht uebersteigt (meinetwegen 100 namen mit jeweils
4 zusaetzlichen einzelinformationen) - die mangelnde
cache-verwaltung einiger browser sowie die unbekannte
RAM-groesse des clientrechners setzen da grenzen;
diese zahl entspricht nur meiner erfahrug - wenn Du
einen groesseren umfang anstrebst, kannst Du das
ausprobieren - besser ist es, gleich auf einen anderen
weg einzuschwenken -
z.b.: zweiter frame mit asp-seite, die den inhalt Deiner
datenbank in inputfeldern (oder auch anderweitig
formatiert) anzeigt - in abhaengigkeit von einem
onchange-event in Deinen dropdowns kannst Du diese
seite ja aufrufen:
"onchange=top.ZWEITER_FRAME.location.href='zeige_infos.asp?name=this.options[this.selectedIndex].value'"
oder so ...
jetzt zum eigentlichen script:
<%@ Language=VBScript %>
<%
SUB generateNamen
'Deine bedingungen
'if dieses oder jenes, dann
%>
'hier musst Du Dein asp eine durch komma getrennte
'namensliste erzeugen lassen - die namen muessen
'von doppelten oder einfachen hochkommata einge-
'schlossen sein "Mueller, Lieschen","Peter Froehlich","","",...
<%
end SUB 'generateNamen
SUB generateGebtag
'Deine bedingungen
'if dieses oder jenes, dann
%>
'hier musst Du Dein asp eine durch komma getrennte
'namensliste erzeugen lassen - die namen muessen
'von doppelten oder einfachen hochkommata einge-
'schlossen sein "Mueller, Lieschen","Peter Froehlich","","",...
<%
end SUB 'generateGebtag
'...
'was Du sonst noch so an daten generieren musst
'...
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>...</title>
<script language = "JavaScript">
<!--
var NAMEN_array = new Array(<%generateNamen%>);
var GEBTAG_array = new Array(<%generateGebtag%>);
//var STASSE\_aarry = new Array(<%generateStrasse%>);
//var HAUSNR_array = new Array(<%generateHausnr%>);
//ar PLZ_array = new Array(<%generatePlz%>);
//var TEL_array = new Array(<%generateTel%>);
//var FAX_array = new Array(<%generateFax%>);
//var EMAIL_array = new Array(<%generateEmail%>);
//... und was Dir sonst noch so einfaellt
//das mit den vectoren, die Deine daten halten,
//kann man auch oekonomischer loesen, aber ich
//weiss ja nicht hundertprozentig, wie Dein ergebnis
//mal aussehen soll - zum denkanstoss sollte es aber
//allemal gereicht haben
function ZEIGE_INFOS(gewaehlter_index)
{
// nur fuer den geburtstag
//
var gebtag = self.GEBTAG_array[gewaehlter_index].value;
self.document.forms["DEIN_FORM"].elements.["DEIN_TOLLES_GEBURTSTAGSFELD"].value = gebtag;
}
//
// gewaehlter_index:
// die position, an welcher der ausgewaehlte namen im dropdown steht
//
// sobald Du anfaengst, das <select> ueber dessen <option>en zu formatieren
// funktioniert diese variante nicht, und Du musst asp einen forlaufenden
// value schreiben lassen, um dann spaeter ebendiesen von JS-abfragen zu lassen
// Du holst Dir sonst werte aus Deiner clientseitigen "Datenbank" ab, die nicht
// zum ausgewaehlten namen passen
//
// ???????????bahnhof: deatails - siehe unten- strick Dich durch
//
//-->
</script>
</head>
<body>
<!--
hier hast du ja nun schon dein asp segensreich wirken lassen,
um ein schoenes formular mit drobdowns zu erzeugen ...
... also machen wir weiter und beziehen uns wieder auf den
onchange-event ...
in jedem Deiner <select>s, die Du durch asp erzeugt muss dann
natuerlich JS-code stehen, der darauf wartet, mit den oben
generierten daten und funktionen "zusammenzuarbeiten" -
da ich nicht weis, was Du sonst noch so implementieren moechtest
kann ich Dir den relevanten quellcode nur fuer Dein beispiel zeigen -
'zeige daten in abhaengigkeit von gewaehltem namen' :
(a)
"onchange='self.ZEIGE_INFOS(this.selectedIndex)'"
(/a)
oder, wenn Du ueber value gehen musst, weil Du
trennzeilen in Deinen dropdown eingefuegt hast:
(b)
"onchange='self.ZEIGE_INFOS(this.options[this.selectedIndex].value)'"
natuerlich musst Du in diesem fall Dein asp einen drop-down erzeugen
lassen, der den value als zahl uebergiebt: value=0, value=1, ...
!!!!!!!!
achtung: \* der wert, der an diese funktion uebergeben wird, sollte auf alle
faelle mit der dazugehoerigen position der jeweiligen zusatzinfo
in den generierten arrays uebereinstimmen
* elemente werden in JS generell mit "0" angezahlt - die erste
zeichenkette in den jeweiligen arrays wird also mit ..._array[0].value
"angesprochen"
(/b)
-->
</body>
</html>
so das wars - ich hoffe, ich konnte Dir weiterhelfen, und Du siehst wieder etwas land -
ueber eine rueckmeldungen wuerde ich mich freuen - peter seliger - pseliger@gmx.net