mit onClick Perl Unterprogramme aufrufen
Anfänger
- cgi
0 Sergej
Hallo zusammen !
In einen CGI-Script habe ich onClick-Funktion eingebaut und möchte gerne, wenn man auf dem Button klick soll eine bestimmte Unterprogramm in dem selben Datei ausgeführt werden.
Beispiel:
#!/usr/bin/perl -w
use strict;
use CGI::CARP qw(fatalsToBrowser);
sub Test1 () {
...
...
...
print "<input type=button value='Führe Test2 aus' onClick='Test2()'></form>";
}
sub Test2 () {
...
}
Wenn man jetzt auf dem Button klick wird sub Test2 leider nicht ausgeführt. Kann jemand mir bitte helfen ?
Hallo !
Beispiel:perlscript.pl
#!/usr/bin/perl -w
use strict;
use CGI::CARP qw(fatalsToBrowser);
use CGI;
my $cgi = new CGI;
my $act = $cgi->param('act');
if($act eq "Test2") { Test2(); }
else { Test1(); }
sub Test1 () {
...
print "<input type=button value='Führe Test2 aus' onClick='perlscript.pl?act=Test2'></form>";
}
sub Test2 () {
...
}Wenn man jetzt auf dem Button klick wird sub Test2 leider nicht ausgeführt. Kann jemand mir bitte helfen ?
Gruß Sergej
Halihallo Sergej
use CGI::CARP qw(fatalsToBrowser);
use CGI::Carp ...
print "<input type=button value='Führe Test2 aus' onClick='perlscript.pl?act=Test2'></form>";
Nein. Zum einen ist "perlscript.pl?act=Test2" kein gültiger Javascript-Code (welcher in
onclick zwingend stehen muss), noch lassen sich Methoden in Perl-Programmen über Java-
Script starten.
@Anfänger:
Perl läuft auf dem Server, JavaScript auf dem Client. Das Aufrufen von Methoden aus
Javascript in einem Perlprogramm ist _unmöglich_. Die einzige Möglichkeit ist die von
Sergej angedeutete, dass du einen neuen Request (Zugriff/Aufruf) auf das Perl-Script
startest.
Viele Grüsse
Philipp
Grüß Dich Phil,
print "<input type=button value='Führe Test2 aus' onClick='perlscript.pl?act=Test2'></form>";
Nein. Zum einen ist "perlscript.pl?act=Test2" kein gültiger Javascript-Code ...
Stimmt! Es muß eine Javascript-Methode aufgerufen werden, die die Seite neu ladet, z.B open('perlscript.pl?act=Test2', target ,...)
Gruß Sergej