Forenindex » Programmierung/Entwicklung » JavaScript » onkeyup

onkeyup

Anonym
Beiträge gesamt: 22827

17. Feb 2005, 21:49
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
Ich hab folgende Problem

ich habe 2 events covert() und Convert1()
die beide sollen je nach wahl (onclick button) in einem Textarea
mit Onkeyup angebunden werden .

Z.B
wenn ich x anclicke soll onkeyup=convert() im Textarea funktionieren
wenn ich y anclicke soll onkeyup=convert1() im Textarea funktionieren

kann jemand mir helfen?


onkeyup

oesi50
  
Beiträge gesamt: 2315

17. Feb 2005, 22:23
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
so?

<body>
<script language="JavaScript" type="text/javascript"><!--
function convert(o){
if (o.form.xy.options[o.form.xy.selectedIndex].value == '1'){
convert1(o);
}
else if (o.form.xy.options[o.form.xy.selectedIndex].value == '2'){
convert2(o);
}
}
function convert1(o){
o.form.text.value = "Convert1";
}
function convert2(o){
o.form.text.value = "Convert2";
}
//-->
</script>
<form>
<select name="xy">
<option value="1">X</option>
<option value="2">Y</option>
</select>
<textarea name="text" onkeyup="convert(this)"></textarea>
</form>
</body>
</html>


Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

onkeyup

Anonym
Beiträge gesamt: 22827

17. Feb 2005, 23:31
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
super

vielen vielen dank!


-yoshuva-

onkeyup

Anonym
Beiträge gesamt: 22827

18. Feb 2005, 23:25
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
Ich bins wieder:)

geht es auch mit Radio onclick button?(anstaat option selection )


Danke

onkeyup

oesi50
  
Beiträge gesamt: 2315

18. Feb 2005, 23:38
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
etwa so?

<body>
<script language="JavaScript" type="text/javascript"><!--
function convert(o){
if (o.form.xy[0].checked == true){
convert1(o);
}
if (o.form.xy[1].checked == true){
convert2(o);
}
}
function convert1(o){
o.form.text.value = "Convert1";
}
function convert2(o){
o.form.text.value = "Convert2";
}
//-->
</script>
<form>
X<input type="radio" name="xy">
Y<input type="radio" name="xy">
<br>
<textarea name="text" onkeyup="convert(this)"></textarea>
</form>
</body>


Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

onkeyup

Anonym
Beiträge gesamt: 22827

19. Feb 2005, 00:04
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
Genau so

Danke

onkeyup

Anonym
Beiträge gesamt: 22827

20. Feb 2005, 08:38
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
wenn ich X anclicke kommt in Textarea convert 1
wenn ich Y anclicke kommt in textarea convert 2
soweit is ok
Ich möchte so haben wenn ich X anclicke und onkeyup convert 1 soll erscheinen und wenn ich danach Y anclicke onkeyup soll bringen convert1convert2

wenn ich nach Y onkeyup und danach X anclicke onkeyup soll bringen convert2convert1

sozusagen ab dem Ende der Cursor soll er immer anfangen.

ist es möglich?

onkeyup

oesi50
  
Beiträge gesamt: 2315

20. Feb 2005, 11:55
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
ganz einfach:

function convert1(o){
o.form.text.value = o.form.text.value + "Convert1";
}

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

onkeyup

Anonym
Beiträge gesamt: 22827

20. Feb 2005, 17:58
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
es ist so..mit diesem Replace Script möchte ich versuchen Beispiel:- wenn ich X radio button anclicke und "a" Taste drucke(onkeyup a..) soll er "Z" bringen.Gleich zeitig wenn ich Y radio button anclicke und "a" Taste drucke soll er die vorher convertierte Z und
danach 1 bringen und so weiter..

kompliziert:(


<SCRIPT language=JavaScript>

<!-- Begin

var Buchstaben;
function convert1() {
X = document.form.box1.value;

X = X.replace(/a/g, "z");
X = X.replace(/b/g, "y");
X = X.replace(/c/g, "x");
X = X.replace(/d/g, "w");
X = X.replace(/e/g, "v");
X = X.replace(/f/g, "u");
document.form.box2.value=X;

}

function convert2() {
Y = document.form.box1.value;
Y = Y.replace(/a/g, "1");
Y = Y.replace(/b/g, "2");
Y = Y.replace(/c/g, "3");
Y = Y.replace(/d/g, "4");
Y = Y.replace(/e/g, "5");
Y = Y.replace(/f/g, "6");
document.form.box2.value=Y;

}
// End -->
</SCRIPT>

<script language="JavaScript" type="text/javascript"><!--
function convert(o){
if (o.form.xy[0].checked == true){
convert1(o);
}
if (o.form.xy[1].checked == true){
convert2(o);

}
}

//-->
</script>
<FORM name=form>
X<input type="radio" name="xy">
Y<input type="radio" name="xy">

<TEXTAREA onkeyup=convert(this); name=box1 rows=10></TEXTAREA>
<TEXTAREA name=box2 rows=10 > </TEXTAREA> <BR></FORM>

onkeyup

oesi50
  
Beiträge gesamt: 2315

20. Feb 2005, 18:19
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
du willst also so etwas wie eine Enigma nachbauen?

ich habe da etwas besseres für dich.


Schau dir mal diesen Link an.

http://vsrv.de/cs2.html

Da habe ich auch am Ende eine Anleitung zum Nachprogrammieren.

(An diesem Algorithmus beissen sich auch die Schlapphüte die Zähne aus)


Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

onkeyup

Anonym
Beiträge gesamt: 22827

20. Feb 2005, 18:41
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
//du willst also so etwas wie eine Enigma nachbauen?///

nein nein
ich wollte nur einfache Fremdsprachen buchstaben convertieren.

jedenfalls Danke nochmals.

onkeyup

oesi50
  
Beiträge gesamt: 2315

20. Feb 2005, 18:47
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
ach so.
Dann versuch mal das hier:

<body>
<script language="JavaScript" type="text/javascript"><!--
function convert(o){
var zeichen = o.form.text.value.charAt(o.form.text.value.length-1);
if (o.form.xy[0].checked == true){
zeichen = zeichen.replace(/a/, "z");
zeichen = zeichen.replace(/b/, "y");
zeichen = zeichen.replace(/c/, "x");
zeichen = zeichen.replace(/d/, "w");
zeichen = zeichen.replace(/e/, "v");
zeichen = zeichen.replace(/f/, "u");
}
if (o.form.xy[1].checked == true){
zeichen = zeichen.replace(/a/, "1");
zeichen = zeichen.replace(/b/, "2");
zeichen = zeichen.replace(/c/, "3");
zeichen = zeichen.replace(/d/, "4");
zeichen = zeichen.replace(/e/, "5");
zeichen = zeichen.replace(/f/, "6");
}
o.form.text.value = o.form.text.value.substr(0, o.form.text.value.length-1) + zeichen;
}
//-->
</script>
<form>
X<input type="radio" name="xy">
Y<input type="radio" name="xy">
<br>
<textarea name="text" onkeyup="convert(this)"></textarea>
</form>
</body>

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

onkeyup

Anonym
Beiträge gesamt: 22827

20. Feb 2005, 21:18
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
Danke
das war genial.wie ich vorgestellt habe.
ein letzes kleines Problem habe ich noch

warum läßt der nicht mit 2 oder 3 buchstaben convertiern?

zeichen = zeichen.replace(/a/, "z"); so geht

zeichen = zeichen.replace(/ts/, "z"); so geht nicht...

nerve ich wohl?:)





onkeyup

oesi50
  
Beiträge gesamt: 2315

20. Feb 2005, 21:44
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
ja das geht schon. Ersetzte alle -1 mit -3 und hänge an alle regulären Ausdrücke wieder das 'g' an.

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

(Dieser Beitrag wurde von oesi50 am 20. Feb 2005, 21:44 geändert)

onkeyup

Anonym
Beiträge gesamt: 22827

20. Feb 2005, 22:11
Bewertung:

gelesen: 4912

Beitrag als Lesezeichen
so?
..geht nicht:(


<body>
<script language="JavaScript" type="text/javascript"><!--
function convert(o){
var zeichen = o.form.text.value.charAt(o.form.text.value.length-3);
if (o.form.xy[0].checked == true){
zeichen = zeichen.replace(/ts/g, "z");
zeichen = zeichen.replace(/b/g, "y");
zeichen = zeichen.replace(/c/g, "x");
zeichen = zeichen.replace(/d/g, "w");
zeichen = zeichen.replace(/e/g, "v");
zeichen = zeichen.replace(/f/g, "u");
}
if (o.form.xy[1].checked == true){
zeichen = zeichen.replace(/a/g, "ah");
zeichen = zeichen.replace(/b/g, "2");
zeichen = zeichen.replace(/c/g, "3");
zeichen = zeichen.replace(/d/g, "4");
zeichen = zeichen.replace(/e/g, "5");
zeichen = zeichen.replace(/f/g, "6");
}
o.form.text.value = o.form.text.value.substr(0, o.form.text.value.length-3) + zeichen;
}
//-->
</script>
<form>
X<input type="radio" name="xy">
Y<input type="radio" name="xy">
<br>
<textarea name="text" onkeyup="convert(this)"></textarea>
</form>
</body>

onkeyup

oesi50
  
Beiträge gesamt: 2315

20. Feb 2005, 22:53
Bewertung:

gelesen: 1450

Beitrag als Lesezeichen
versuchs mal so:

<script language="JavaScript" type="text/javascript"><!--
function convert(o){
if(!(o.form.text.value.length % 3) ){
var zeichen = o.form.text.value;
if (o.form.xy[0].checked == true){
zeichen = zeichen.replace(/ts/g, "z");
zeichen = zeichen.replace(/b/g, "y");
zeichen = zeichen.replace(/c/g, "x");
zeichen = zeichen.replace(/d/g, "w");
zeichen = zeichen.replace(/e/g, "v");
zeichen = zeichen.replace(/f/g, "u");
}
if (o.form.xy[1].checked == true){
zeichen = zeichen.replace(/a/g, "ah");
zeichen = zeichen.replace(/b/g, "2");
zeichen = zeichen.replace(/c/g, "3");
zeichen = zeichen.replace(/d/g, "4");
zeichen = zeichen.replace(/e/g, "5");
zeichen = zeichen.replace(/f/g, "6");
}
o.form.text.value = zeichen;
}
}
//-->
</script>
<form>
X<input type="radio" name="xy">
Y<input type="radio" name="xy">
<br>
<textarea name="text" onkeyup="convert(this)"></textarea>
</form>

Allerdings müssen jetzt immer erst 3 Zeichen eingegeben werden, bis eine Konvertierung stattfindet.

PS: wenn du dich im Forum registrierst, kannst du dir neue Beiträge per Mail schicken lassen.

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

(Dieser Beitrag wurde von oesi50 am 20. Feb 2005, 22:55 geändert)

onkeyup

Anonym
Beiträge gesamt: 22827

20. Feb 2005, 23:34
Bewertung:

gelesen: 1450

Beitrag als Lesezeichen
so weit passt.
aber Das alte Problem is wieder da:(

was y konvertiert hat konveritert X wieder mit .

onkeyup

oesi50
  
Beiträge gesamt: 2315

20. Feb 2005, 23:57
Bewertung:

gelesen: 1450

Beitrag als Lesezeichen
ja das ist das Problem, wenn man es auf diese Art macht. Richtig klappt das nur mit genau 1 Zeichen.


Eine Lösung für dein Problem wäre, für jedes Sonderzeichen einen Link bzw. Button anzulegen. Dieser muss dann geklickt werden, wenn das jeweilige Schriftzeichen erscheinen soll.


Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

onkeyup

yoshuva
Beiträge gesamt: 1

21. Feb 2005, 00:08
Bewertung:

gelesen: 1450

Beitrag als Lesezeichen
immerhin weit gekommen .Danke nochmals

onkeyup

Anonym
Beiträge gesamt: 22827

6. Apr 2005, 11:28
Bewertung:

gelesen: 1450

Beitrag als Lesezeichen
jetzt ist eine andere frage

wenn ich mitten im satz was ändern will springt der cursor immer am ende.

gibts ne Lösung?




<center>
<form name="subform">

<script language="JavaScript" type="text/javascript"><!--
function convert(o){
if(!(o.form.text.value.length % 1) ){
var zeichen = o.form.text.value;
if (o.form.xy[0].checked == true){
zeichen = zeichen.replace(/a/g, "z");
zeichen = zeichen.replace(/b/g, "y");
zeichen = zeichen.replace(/c/g, "x");
zeichen = zeichen.replace(/d/g, "w");
zeichen = zeichen.replace(/e/g, "v");
zeichen = zeichen.replace(/f/g, "u");
}
if (o.form.xy[1].checked == true){
zeichen = zeichen.replace(/a/g, "1");
zeichen = zeichen.replace(/b/g, "2");
zeichen = zeichen.replace(/c/g, "3");
zeichen = zeichen.replace(/d/g, "4");
zeichen = zeichen.replace(/e/g, "5");
zeichen = zeichen.replace(/f/g, "6");
}
o.form.text.value = zeichen;
}
}
//-->
</script>
<form>
X<input type="radio" checked name="xy">
Y<input type="radio" name="xy">
<br>
<textarea name="text" rows=5 wrap=physical cols=50 size="-2" onkeyup="convert(this)"></textarea>
</form>