2011-02-18 71 views
1

主HTML文件中包含下面的JavaScript源Perl的WWW ::的編劇,從.js文件調用JavaScript文件

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
<title>Hello Worlds</title> 
<link rel="stylesheet" href="css/main_page.css" type="text/css"/> 
<link rel="stylesheet" href="css/page_content.css" type="text/css"/> 
<script type="text/javascript" src="js/jquery.js"></script> 

<script type="text/javascript" src="js/util.js"></script> 
<script type="text/javascript" src="js/main_page.js"></script> 
<script type="text/javascript" src="js/page_content.js"></script> 
<script type="text/javascript" src="js/configurator.js"></script> 
<meta http-equiv="Cache-Control" content="no-cache"/> 
<meta http-equiv="Pragma" content="no-cache"/> 
<meta http-equiv="Expires" content="0"/> 

形式的後一個叫屬於page_content.js文件中的JavaScript功能。

我想inovke使用以下

$scripter->get('javascript:submitForm()'); 

的功能,但它不工作。請幫助我如何調用屬於page_content.js文件的功能。

+2

請顯示一些代碼。 WWW :: Scripter需要一個引擎來實際解析javascript。你在使用哪一個?您可能必須解析HTML並下載JS文件。 (但我不是100%確定的) – Cfreak 2011-02-18 15:02:17

回答

1

如果HTML頁面(地址爲存儲在$url)包含(內部或外部)JavaScript的定義函數/程序submitForm()那麼你可以通過下面的代碼執行:

use WWW::Scripter; 

$w = new WWW::Scripter; 
$w->use_plugin('JavaScript'); 

$w->get($url); 
$w->eval('submitForm();'); 

對於更多信息請參閱WWW::Scripter文檔。