以下是我個人開發(fā)的一個訂單管理程序的訂單錄入介面. (開發(fā)平臺jdk1.4+tomcat5.0+sql2000+struts1.1)主要使用了javascript(子父窗口控制,彈出新窗口,子父窗口之間傳值).
以下是具體步驟.
第一步:主檔添加介面(如圖1)
當(dāng)點擊客戶代號右邊的按鈕時.將彈出一個子窗口,然后點擊子窗口中的"選擇"鏈接.所選的客戶資料將傳遞到父窗口表單中.
以下是javascript代碼.
1.子父窗口傳值.
<script language="JavaScript">
function popup()
{
window.opener.document.all["test"].value='mytest'; //在子窗口設(shè)置父窗口表單元素的值.
window.close() //關(guān)閉子窗口.
}
</script>
<a href="#" onClick="javascript:popup()">選擇</a> //調(diào)用代碼.
2.彈出新窗口
<script language="JavaScript">
function winopen(url,title)
{
window.open(url,title,"toolbar=no,directories=no,menubar=no,scrollbars=yes,width=600,height=300");
}
</script>
//--調(diào)用代碼.
<a href="#" onClick="javascript:winopen('order_formlistAction.do?action=add&nid=123456','add')">添加明細(xì)</a>
|
 圖(1) |
|
 圖(2) |
第二步: 添加明細(xì)資料(如圖3)
當(dāng)主檔資料輸入完成.點擊"添加"按鈕后. 進入(圖3)所示介面.這里主要有二個狀態(tài)改變. "添加"按鈕自動變成"修改". 顯示明細(xì)資料介面.這里用了一個內(nèi)框來顯示明細(xì)資料.
1.使用內(nèi)框代碼.
<iframe src="order_formlistAction.do?action=view&nid=123456" name="com" id="com" width="100%" height="100%" marginwidth="0" marginheight="0" frameborder="0" align="center" scrolling="yes"></iframe>
2.控制內(nèi)框是否顯示的代碼
我們這里使用struts提供的<logic:equal> 標(biāo)簽. 主要判斷sale1ActionForm的action屬性的值.如果action的值等于edit就顯示內(nèi)框.
<logic:equal name="sale1ActionForm" property="action" scope="request" value="edit">
<!--在這里加入內(nèi)框代碼-->
</logic:equal>
|
 圖(3) |
第三步:明細(xì)資料管理(如圖4)
點擊"添加明細(xì)" 還是彈出一個子窗口. 這是一個明細(xì)添加介面.主要是錄入訂單的產(chǎn)品資料.在這里. 還是通過點擊產(chǎn)品代碼右邊的按鈕來彈出產(chǎn)品資料的"子窗口".從呂選擇要添加的產(chǎn)品. 當(dāng)輸入完一筆資料后.按"添加"后.將自動關(guān)閉子窗口. 并刷新父窗口.
1.刷新父窗口代碼.
<script language="JavaScript" type="text/JavaScript">
window.opener.location.reload(); //刷新父窗口
window.close(); //關(guān)閉子窗口.
</script>
|
 圖(4) |
第四步: 完成輸入介面(如圖5)
在這里放了一個"完成"按鈕. 點擊即可導(dǎo)向其它介面.
|
 圖(5) |
|
|
|