經過一翻嘗試,終於找到了一個自大比較滿意的解決方法,現寫在自己的博客中與大家分享。
第一步需要在簽核頁面中提供一個區域用來顯示表單內容,這裡使用的是DIV。
代碼如下:
<script type="text/javascript">
$(document).ready(function() {
loadPage("doc_view", "<?php echo $this->doc_view_url . '/flag/1'; ?>");
});
</script>
<?php
$p = new Portlet();
$p->setCaption("Document View")
->setShowBorder(false)
->addItem("<div id='doc_view'></div>") //這個DIv就是用來顯示表單內容的容器
->render();
echo $this->partial("approval/CommentsList.phtml", array("approval_list" => $this->approval_list));
?>
第二步就是編寫一段JavaScript用來獲取表單頁面,使用jQuery
代碼如下:
//動態加載頁面
//id 顯示頁面的容器組件ID
//url 欲加載頁面網址
function loadPage(id, url) {
$("#"+id).addClass("loader");
$("#"+id).append("Loading......");
$.ajax({
type: "get",
url: url,
cache: false,
error: function() {alert('加載頁面' + url + '時出錯!');},
success: function(msg) {
$("#"+id).empty().append(msg);
$("#"+id).removeClass("loader");
}
});
}