以程序方式創建組件並把它們插入 DOM 結構見清單
清單 創建 Dojo 組件
var newEditor = dojo
widget
createWidget(
Editor
);
var layoutWinEd
= dojo
widget
createWidget(
LayoutContainer
{layoutAlign:
top
});
layoutWinEd
addChild(newEditor);
清單 在布局容器中添加編輯器為了連接郵件組件可以包含以下代碼
FloatingPaneWidget
addChild(layoutWinEd
);
為了添加業務邏輯(用來發送電子郵件的實際代碼)Dojo 允許把定制的方法與工具包提供的基本方法連接在一起連接定制方法所用的代碼如下
dojo
event
connect(SubmitButtonId
onClick
codeForSendingMail
);
編寫處理 onclick 事件的函數見清單
清單 處理事件的示例代碼
function codeForSendingMail () {
alert(
Special handling for onclick
);
Your logic goes here
}
最後顯示組件
dojo
widget
byId(
pane
)
show();
為了異步地提交數據需要使用 dojoio 庫這個庫提供一個相當簡單的接口可以通過 bind 方法異步地提交表單數據清單 給出一個示例
清單 處理事件
var myform = dojo
byId(
myform
);
dojo
io
bind({
url: xyz
com
/* This is not required if the form has an action element defined */
formNode: myform
method: myform
method
/* Get or Post */
load: myCallBackFuntion
error: function(type
error)
{
alert(
Error:
+ type +
n
+ error);
}
});
Dojo 支持跨域通信因為這個應用程序需要跨不同的域(應用服務器郵件服務器)進行通信所以需要使用 Dojo 的 XhrIframeProxy 庫在前面編寫的 js 文件中添加清單 中的代碼
[] [] [] [] []
From:http://tw.wingwit.com/Article/program/net/201311/14689.html