Perl:XUL :: GUI如何在javascript和perl之间传递变量

时间:2014-07-16 16:08:01

标签: javascript perl xul

Perl Expert

我正在尝试使用Web :: Gui为我的团队制作应用程序,但遇到了障碍,我需要在perl和javascript之间传递变量。

我的代码从文本区域获取输入,通过perl进行一些处理,然后通过刷新通过javascript显示结果。我从CPAN上的XUL :: GUI示例中看到perl脚本可以通过javascript中的“perl()”调用。但是,该示例未显示如何在perl和javascript之间传递变量。

你能指出我正确的方向吗?

use Web::Gui;
display
    ( CENTER 
         H3( 'Pathe!' ),
         ( FORM
              ( TEXTAREA id => 'myText', rows => 10, cols => 50, readonly => 1, TEXT => 'disks' )
              ( INPUT type => 'button', value => 'Search', onclick => function q{
                  var text = document.getElementById('myText').innerHTML;
                  perl( "mySub( text )" );
                  document.getElementById('d').innerHTML = "<b>" + text + "<b/>"; } 
              )
        ),
        ( DIV id => 'd' )
    );

sub mySub {
  return "$_[0]35";
}

1 个答案:

答案 0 :(得分:0)

我解决了这个问题。它只是perl q和qq函数:

display
    ( CENTER 
        H3( 'Pathe!' ),
        ( FORM
            ( TEXTAREA id => 'myText', rows => 10, cols => 50, readonly => 1, TEXT => 'disks' ),
            ( INPUT type => 'button', value => 'Search', onclick => \&mySub )
        ),
        ( DIV id => 'd' )
    );


sub mySub {
    my $input = ID(myText)->value;
    $input .= "156";
    gui qq{ document.getElementById('d').innerHTML = '<b>' + \'$input\' + '<b/>'; }
}