In Anlehnung an den Beitrag von
Meister proper01:
(JAVASCRIPT) wie drücke ich ein var in /.*/gi aus???
zu finden unter
http://forum.de.selfhtml.org/?t=215074&m=1472366&readmode=list#m1472366
hätte ich folgende Frage an euch bzw folgendes Problem...
Ich würde gerne in meiner Formel einen Wert(hier Ganzes_Wort) suchen Ihn und mit onkeyup ausgeben(hier Ausgabe_HTML)!!
So sollte zB.:
bei der Eingabe x
myArray[0] Xaver ausgeben
und des weiteren
myArray[1] undefined ausgeben
myArray[2] undefined ausgeben
und bei Änderung des zuvoreingegebenen Wertes x auf die Eingabe a sollte die Reihung folgendermaßen aussehen:
Anton
und des weiteren
Aal
Xaver
undefined
undefined
bei der unten angeführten Formel
wir jedoch egal wie die Eingabe auch immer lauten sollte als erster Wert stets
Anton
und des weiteren
), (Aal
), (Xaver
), (Yvonne
sprich die Reihenfolge wird wie OBEN!!! nicht eingehalten...anders als Meister proper01 möchte ich document.getElementById() verwenden.
Ich bitte euch dringend um Hilfe und hoffe dass ihr meine Verwirrungen entwirren könnt ;)!!! Natürlich bin ich für all eure Ratschläge schon mal im Voraus dankbar!!!
Lg euer Besser keine Haare am Kopf als die Laus im Hirn ;P
Formel(...und unten gibts noch eine Erklärung hierzu...;) ):
<input id="Eingabe_HTML" onkeyup="Suchfunktion(this.value)"/>
<input id="Ausgabe_HTML" >
<script type="text/javascript">
function Suchfunktion () {
var Wortteil = document.getElementById('Eingabe_HTML');
var Ganzes_Wort = new RegExp("[^(]*?" + Wortteil + "[^)]*", "gi");
var string = ("(Anton), (Aal), (Xaver), (Yvonne)");
var myArray = string.match(Ganzes_Wort);
var Ausgabe_JS = document.getElementById('Ausgabe_HTML');
if (myArray[0] != "undefined") {
Ausgabe_JS.value = myArray[0];
}
else {
Ausgabe_JS.value = "Ihre Eingabe erzielte leider keinen Treffer";
}
return false;
}
</script>
Erklärung der Formel:
<input id="Eingabe_HTML" onkeyup="Suchfunktion(this.value)"/>
Hier sollte der Wortteil eingegeben werden und die Formel bei jedem onkeyup erneut ausgelöst werden
var Wortteil = document.getElementById('Eingabe_HTML');
holt sich hierfür den wert aus der Eingabe in der HTML
var Ganzes_Wort = new RegExp("[^(]*?" + Wortteil + "[^)]*", "gi");
var string = ("(Anton), (Aal), (Xaver), (Yvonne)");
var myArray = string.match(Ganzes_Wort);
Hier sollte im String der Wortteil gefunden und mit new RegExp der Wortteil mit Klammern () die das Wort einschließen mit match gefunden werden!!
<input id="Ausgabe_HTML" >
Letztendlich sollte die Ausgabe dann das Erste Ergebnis der Reihung zeigen...Bei JEDEM NEUEN Eintrag!!!
var Ausgabe_JS = document.getElementById('Ausgabe_HTML');
if (myArray[0] != "undefined") {
Ausgabe_JS.value = myArray[0];
}
else {
Ausgabe_JS.value = "Ihre Eingabe erzielte leider keinen Treffer";
}
return false;
}
Wenn der erste Wert nicht undefined(da sonst "Ihre Eingabe erzielte leider keinen Treffer" gezeigt werden sollte) sollte ausgegeben werden...