#!/usr/bin/perl 
  # perl cgi script products2.cgi 
use DBI;
print <<END_HTML;
Content-type: text/html
END_HTML
my $host = "xxx.xxx.xxx";
my $port = "xxxx";
my $database = "proj4";
my $username = "xxxxxx";
my $password = "xxxxx";
my $database_source = "dbi:mysql:$database:$host:$port";
my $dbh = DBI->connect($database_source, $username, $password) 
or die 'Cannot connect to db';
my $sth = $dbh->prepare("SELECT distinct category FROM products");
$sth->execute();
#getting the categories and displaying them
while(my @row=$sth->fetchrow_array()) {
my $data =$row[0];
 my @values = split(' ',$data);
my $pic = "/~xxxx/proj4/images/".$values[0].".jpg";
print <<END_HTML;
<div class="view view-first">
END_HTML
print"<img src=\"$pic\" alt=\"$row[0]\"/>"; 
print "<h2 class=\"choc\"><span>$row[0]</span></h2>";
print "<div class=\"mask\">"; 
print "<h2 class=\"eff\">\"$row[0]\"</h2>";
print <<END_HTML; 
 <p>One of Our best sellers</p>  
     <a href="#" class="info $values[0]">Discover</a>  
 </div>   
 </div>  
END_HTML
 }
 $sth->finish();
 $dbh->disconnect();
我正在尝试替换
  <div id="content"></div> 
单击导航栏中的“产品”链接时,在我的 proj.html 到上述 perl 脚本的输出。
//产品导航栏
 <li>
<a href="/perl/xxxxx/products2.cgi" id="productit">
Products
</a>
 </li>
我知道我必须使用 javascript 和 ajax,但不知道该怎么做。
 $('#productit').bind('click', function() {
 var handle = document.getElementById('content');
  var req = new HttpRequest('/perl/xxxxx/products2.cgi', callback); 
  //i know this ajax call only expects string to be returned from server
 req.send();  
 handle.innerHTML= //not sure how to populate this                  
 });
有人可以指导我如何发送准备从 perl 脚本显示的 html