2013-04-07 81 views
1

我是新来的Perl,我试图包括一个CSS文件在perl生成的HTML页面, 我怎么能用cgi来做到这一点? 它应该是类似于 print $ cgi - > start_html(-link => {-href =>'/styles/main.css',-rel =>'stylsheet',-type =>'text/css'} );添加链接到perl CGI的头

下面是完整的代码,

#!C:\Dwimperl\perl\bin\perl.exe 
use CGI; 
my $cgi = new CGI; 

# ###----- GETTING THE SCRIPTS AND STYLES ------### 
my $jquery = "//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"; 

# ###----- PRINTING THE PAGE -----### 
print $cgi -> header; 
print $cgi -> start_html(
      -title => "TestTitle", 
      -link => { -href => '/styles/main.css', -rel => 'stylsheet', -type => 'text/css'}, 
      -script=> [{-language => 'javascript',-src => $jquery},{-code => $jscript}], 
     ); 
print $cgi -> h1({-class=>"title",-align=>"center"},"Zero Testing"); 
print $cgi -> start_div({-align=>"center"}); 
print $cgi -> start_div({-align=>"center",-style=>"margin-bottom:35px;"}); 
print $cgi -> a({-class=>"linkButton",-id=>"btn_Page",-href=>"Test.pl"},"Suites Page"); 
print $cgi -> end_div; 
print $cgi -> start_form({-method=>"get",-id=>"dataForm"}); 
print $cgi -> end_form; 
print $cgi -> end_div; 
print $cgi -> end_html(); 

感谢

+0

你真的不希望使用CGI.pm来生成你的HTML。将HTML放入模板是一个更好的主意。 – 2013-04-07 17:11:50

回答

1

你可以这样写:

use CGI qw/:standard/; 

# ...  

print $cgi->start_html(
    -title =>"TestTitle", 
    -script=> [ {-language => 'javascript',-src => $jquery}, {-code => $jscript} ], 
    -head => [ 
     Link({ -href => '/styles/main.css', -rel => 'stylsheet', -type => 'text/css'}), 
    ] 
); 
+0

感谢您的回答,我按照您提到的那样做了,但是我得到的只是一个没有内部元素的白色屏幕。 – Zero 2013-04-07 09:33:57

+0

您是否正确初始化了$ jscript变量? – 2013-04-07 10:51:28

+0

是的,我没有,但我没有包括它来减小代码大小。 – Zero 2013-04-09 19:05:46