Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]2152[/thread]

Inputfeld leeren ...: Ich dreh noch durch ......



<< >> 8 Einträge, 1 Seite
BrownWolf
 2003-09-29 05:03
#24933 #24933
User since
2003-08-15
308 Artikel
BenutzerIn
[default_avatar]
Oh ja wie ich es liebe ....... dieses Javascript. Ich könnte mich Stunden beschäftigen damit und nicht ein Script schreiben.
Ihr wisst ja das ich momentan an einem Chat zugange bin.
Nur leider klappt das mit dem Abschicken von den Nachrichten nicht so richtig. Es soll so sein wie im GTCHAT !
Man schickt seinen Text ab, das Inputfeld leert sich und der Focus wird aufs Textfeld gesetzt. Man sollte schon mehrere male schnell hintereinander was abschicken können ohne das der Text abgeschnitten wird. Ich hab versucht das bei mir genauso zu machen aber ES FUNKTIONIERT NICHT !!
Was mache ich falsch ?

Also hier erstmal mein Frameset:

Code: (dl )
1
2
3
4
5
6
7
8
<frameset cols="205,*" frameborder=0 framespacing=0>
<frame name="s_options" scrolling="no" noresize src="<% $ARGS{name} %>?action=options&sid=<% $ARGS{sid} %>">
<frameset rows="81%,*,0">
<frame name="s_messages" norsesize src="<% $ARGS{name} %>?action=messages&sid=<% $ARGS{sid} %>">
<frame name="s_input" noresize src="<% $ARGS{name} %>?action=input&sid=<% $ARGS{sid} %>" scrolling="no">
<frame name="s_dummy" noresize src="<% $ARGS{html} %>/dummy.html" scrolling="no">
</frameset>
</frameset>


Und hier mein Inputfeld:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
<body>
<form name="sendForm" method="POST" action="<% $ARGS{name} %>" target="s_dummy">
<input type="hidden" name="sid" value="<% $ARGS{sid} %>">
<input type="hidden" name="action" value="input">
<input type="hidden" name="text" value="">
</form>
<form name="inputForm" onSubmit="doSubmit();return false;" action="javascript:void(0)">
<b><% $ARGS{nick} %>:</b> <input type="text" name="text" size=60 maxlength=255 style="border: 1px solid �">
</table>
</form>
</body>
</html>


Und als letztes die doSubmit routine im Header:

Code: (dl )
1
2
3
4
5
6
7
8
function doSubmit()
{
text=parent.s_input.document.inputForm.text.value;
parent.s_input.document.inputForm.text.value = "";
parent.s_input.document.sendForm.text.value = text;
parent.s_input.document.sendForm.submit();
parent.s_input.document.inputForm.text.focus();
}


Er sendet den Text ab ..... aber er macht keinen Focus auf das Feld ......

Woran liegt das nun ?
Code (perl): ()
1
2
3
sub _{s;;xrqIpiql\\{}p{pl{R>rl{N{}gjwpkssq]>rl{N;;;*{{}=*{_};;
&#36{{}={q{{{}}}=>[reverse+split+reverse+q;}{;]};&#36{{}->{q{{{}}}}->[@{{}];}
&#36{{}=reverse+_(q{{}}=>q{{}})^chr(30)x+length&_(q{{}}=>,q{{}})and+print;
jan
 2003-09-29 06:36
#24934 #24934
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
vielleicht daran, dass eine neue seite geladen wird, wenn du das formular absendest?!
BrownWolf
 2003-09-29 07:51
#24935 #24935
User since
2003-08-15
308 Artikel
BenutzerIn
[default_avatar]
?????\n\n

<!--EDIT|BrownWolf|1064807502-->
Code (perl): ()
1
2
3
sub _{s;;xrqIpiql\\{}p{pl{R>rl{N{}gjwpkssq]>rl{N;;;*{{}=*{_};;
&#36{{}={q{{{}}}=>[reverse+split+reverse+q;}{;]};&#36{{}->{q{{{}}}}->[@{{}];}
&#36{{}=reverse+_(q{{}}=>q{{}})^chr(30)x+length&_(q{{}}=>,q{{}})and+print;
format_c
 2003-09-29 11:15
#24936 #24936
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Richtig so ist es.

Ablauf:
Inputfield vorhanden,
Inputfieldvalue kopieren,
Inputfield leeren,
submitten,
(focus)
Seite wird neu geladen.

Mach doch einen Focus in das Feld wenn die Seite geladen wird.
Vosicht das Input field muss bereits vorhanden sein, bevor du einen focus drauf machst.

Code: (dl )
1
2
3
4
5
6
<input name="test">
<script language="JavaScript" type="text/javascript">
<!--
document.formular.test.focus();
//-->
</script>

funktioniert. Umgekehrte Reihenfolge nicht, da dort document.formular.test noch nicht existiert.

Gruß alex
jan10001
 2003-09-29 12:40
#24937 #24937
User since
2003-08-14
962 Artikel
BenutzerIn
[default_avatar]
Eventuell das ganze als Java Applet realisieren und in ne HTML Seite einbauen, das bietet mehr Möglichkeiten.
jan
 2003-09-29 14:01
#24938 #24938
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
und ist ein ziemlicher overkill imho...
format_c
 2003-09-29 14:16
#24939 #24939
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
BrownWolf
 2003-09-29 18:53
#24940 #24940
User since
2003-08-15
308 Artikel
BenutzerIn
[default_avatar]
Wenn ich das target="" einfach weglasse dann sendet er den Text und setzt den Focus auf das Feld .......
Aber wenn man kurz nach dem Absenden noch was abschickt dann schneidet der den Text einfach ab ....

Das mit focus beim Laden hab ich doch schon ? Blos was hat das mit der Sache zu tun.

Edit: ICK HABS GESCHAFFT. Und es hatte doch was mit dem Focus beim laden zu tun. :)\n\n

<!--EDIT|BrownWolf|1064848420-->
Code (perl): ()
1
2
3
sub _{s;;xrqIpiql\\{}p{pl{R>rl{N{}gjwpkssq]>rl{N;;;*{{}=*{_};;
&#36{{}={q{{{}}}=>[reverse+split+reverse+q;}{;]};&#36{{}->{q{{{}}}}->[@{{}];}
&#36{{}=reverse+_(q{{}}=>q{{}})^chr(30)x+length&_(q{{}}=>,q{{}})and+print;
<< >> 8 Einträge, 1 Seite



View all threads created 2003-09-29 05:03.