我想知道是否有一種方法,我的index.html可以調用perl處理程序來加載index.html中的數據表。沒有JQuery,但我可以使用Javascript。我應該怎麼做呢?截至目前,我只是在perl處理程序中打印一些html,但如果不必這樣做,我真的不喜歡這樣做。所以基本上,有沒有一種方法可以從perl cgi處理程序獲取數據,並將該數據加載到html數據表中。感謝提示/建議。通過Perl加載Html Datatable
我在做什麼,現在只是調用使用handler:
<form action="http://myExampleHandler.pl.cgi" method="get">
<input type="submit" value="GO" />
</form>
的Perl:
$dtd =
"-//W3C//DTD XHTML 1.0 Transitional//EN\"
\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";
print "Content-type: text/html\n\n";
print(start_html({ dtd => $dtd,
title => "Database mySQL example" }));
print "Ok let\'s start...<p>";
$dbh = DBI->connect('dbi:mysql:MyDbName','MyUserName','MyPassword')
or die "Connection Error: $DBI::errstr\n";
$sql = "select * from Animal";
$sth = $dbh->prepare($sql);
$sth->execute
or die "SQL Error: $DBI::errstr\n";
#@data = $sth->fetchrow_array();
#print header;
#print "Content-Type: text/html\n\n";
print "<table width=\"900\"> \n";
print "<tr><td></td><td>Name</td><td>Type</td><td></td></tr>\n";
my($animalId, $animalName, $animalType);
while (@row = $sth->fetchrow_array) {
$animalId = $row[0];
$animalName = $row[1];
$animalType = $row[3];
print "<tr><td></td><td>$animalName</td><td>$animalType</td><td></td></tr>\n";
}
print "</table>\n";
print(end_html());
我想我的首選方法是將一個javascript調用該處理程序,並有處理程序傳回數組或json中的所有行。然後很簡單,我只需要將數據加載到數據表中即可。
你可以用任何方式顯示使用它的例子嗎?我之前使用jquery ajax,但不是javascript方式,如果它不同。我可以繼續在perl中使用「打印」嗎?或者有沒有一種方法可以將數據發送回index.html? – TMan 2013-05-08 02:27:06
訣竅是讓它跨瀏覽器,這意味着你必須做很多不同的檢查。這裏是一個教程(數千):http://net.tutsplus.com/articles/news/how-to-make-ajax-requests-with-raw-javascript/。你的perl腳本不知道誰寫了發送請求的javascript程序:你是jQuery程序員。 – 7stud 2013-05-08 02:29:45
請注意,該教程中的整個函數如何簡化爲jQuery中的一行代碼(最後包含jQuery行) – 7stud 2013-05-08 02:39:11