1.觸發客戶端事件
復制代碼 代碼如下:
<ext:Button ID="Button1" runat="server" Text="快點我">
<Listeners>
<Click Handler="Greet()"></Click>
</Listeners>
</ext:Button>
<script type="text/javascript">
function Greet() {
alert("Hello World!");
}
</script>
2.觸發服務端事件
復制代碼 代碼如下:
<ext:Button ID="Button1" runat="server" Text="快點我">
<DirectEvents>
<Click OnEvent="MyButtonClickHandler"></Click>
</DirectEvents>
</ext:Button>
protected void MyButtonClickHandler(object sender, DirectEventArgs e)
{
X.Msg.Alert("Hello","HelloWorld!");
}
注:按理說客戶端會彈出一個消息框的,調試時已經執行到了這個後台函數內,前台沒反應,原因未知。
DirectEventArgs也可以替換成System.EventArgs,但是這樣將無法訪問某些屬性,例如:ExtraParams,下面講這個參數的用處
3.觸發服務端事件並傳參
復制代碼 代碼如下:
<DirectEvents>
<Click OnEvent="MyButtonClickHandler">
<ExtraParams>
<ext:Parameter Name="param1" Value="value1"></ext:Parameter>
</ExtraParams>
</Click>
</DirectEvents>
後台獲取參數可以用如下方式:e.ExtraParams["param1"]
從IE的F12工具來看確實將參數發往了服務端。
4.自定義額外屬性
復制代碼 代碼如下:
<ext:Button ID="Button1" runat="server" Text="快點我">
<Listeners>
<Click Handler="CusProperty(this);"></Click>
</Listeners>
<CustomConfig>
<ext:ConfigItem Name="cusProperty1" Value="theValue" Mode="Value"></ext:ConfigItem>
</CustomConfig>
</ext:Button>
<script type="text/javascript">
function CusProperty(obj) {
alert(obj.cusProperty1);
}
</script>
成功獲取到自定義的屬性的值