在FormPanel中按回车按键,会触发默认按钮的click事件。设置方法为在FormPanel中设置DefaultButton属性,如果没有设置这个属性,默认为最后一个按钮。

1.缺省最后一个按钮为默认按钮

X.FormPanel()
    .Buttons(
        X.Button().Text('第一个按钮'),
        X.Button().Text('默认按钮').OnClientClick("Ext.Msg.alert('回车默认触发的事件','触发的按钮为最后一个按钮')")
    )  

2.以数字编号指点默认按钮

X.FormPanel()
    .DefaultButton(')
    .Buttons(
        X.Button().Text('第一个按钮'),
        X.Button().Text('默认按钮').OnClientClick("Ext.Msg.alert('回车默认触发的事件','触发的按钮为最后一个按钮')") ,
        X.Button().Text('第三个按钮')
    )  

3.用ID指定默认按钮

X.FormPanel()
    .DefaultButton('button 2')
    .Buttons(
        X.Button().Text('第一个按钮'),
        X.Button().ID('button 2').Text('默认按钮').OnClientClick("Ext.Msg.alert('回车默认触发的事件','触发的按钮为最后一个按钮')") ,
        X.Button().Text('第三个按钮')
    )  

4.用选择器指定默认按钮

X.FormPanel()
    .DefaultButton('button[text=默认按钮]')
    .Buttons(
        X.Button().Text('第一个按钮'),
        X.Button().Text('默认按钮').OnClientClick("Ext.Msg.alert('回车默认触发的事件','触发的按钮为最后一个按钮')") ,
        X.Button().Text('第三个按钮')
    )  

视图的完整代码如下所示

@using Ext.Net;
@using Ext.Net.MVC;
@{
    Layout = null;
    var X = Html.X();
}

<!DOCTYPE html>

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>默认按钮</title>
</head>
<body>
    @X.ResourceManager();
    @(X.Container()
        .Layout(LayoutType.VBox)
        .Items(
            X.FormPanel()
                .Title("缺省默认按钮为最后一个按钮")
                .BodyPadding()
                .Items(
                    X.TextField().FieldLabel("项目 1")
                )
                .Buttons(
                    X.Button().Text("按钮 1"),
                    X.Button().Text("按钮 2").OnClientClick("Ext.Msg.alert('缺省设置','我是按钮 2');")
                ),
            X.FormPanel()
                .Title("指定第二个按钮为默认按钮,以数字0开始计算")
                .BodyPadding()
                .DefaultButton(")
                .Items(
                    X.TextField().FieldLabel("项目 1")
                )
                .Buttons(
                    X.Button().Text("按钮 1"),
                    X.Button().Text("按钮 2").OnClientClick("Ext.Msg.alert('按索引指定默认按钮','我是按钮 2');"),
                    X.Button().Text("按钮 3")
                ),
            X.FormPanel()
                .Title("指定Id为button2的按钮为默认按钮")
                .BodyPadding()
                .DefaultButton("button2")
                .Items(
                    X.TextField().FieldLabel("项目 1")
                )
                .Buttons(
                    X.Button().Text("按钮 1"),
                    X.Button().ID("button2").Text("按钮 2").OnClientClick("Ext.Msg.alert('按Id指定默认按钮','我是按钮 2');"),
                    X.Button().Text("按钮 3")
                ),
            X.FormPanel()
                .Title("以选择器指定默认按钮,指定Text属性为 按钮 2 的按钮为默认按钮")
                .BodyPadding()
                .DefaultButton("button[text=按钮 2]")
                .Items(
                    X.TextField().FieldLabel("项目 1")
                )
                .Buttons(
                    X.Button().Text("按钮 1"),
                    X.Button().Text("按钮 2").OnClientClick("Ext.Msg.alert('按选择器指定默认按钮','我是按钮 2');"),
                    X.Button().Text("按钮 3")
                )

        ) //end items
    )<!-- end container -->

</body>
</html>

Ext.Net 学习随笔 002 默认按钮的更多相关文章

  1. Ext.Net 学习随笔 003 超链接按钮

    HyperlinkButton() 1.不带图标的普通超链接按钮 @(X.HyperlinkButton() .Text("简单样式") .OnClientClick(" ...

  2. Ext.Net 学习随笔 001 安装Ext.Net

    Ext.Net版本:4.1.0 Ext.Net官网:ext.net Ext.Net官方演示:mvc.ext.net Ext.Net MVC Example 下载:github.com/extnet/E ...

  3. Ext.Net 学习随笔 003 Panel基本使用

    Panel() 1.使用Content和Html属性设置Panel内容 前台View代码 @(X.Panel() .ID("panel1") .Width() .Height() ...

  4. 【Ext.Net学习笔记】06:Ext.Net GridPanel的用法(GridPanel 折叠/展开行、GridPanel Selection、 可编辑的GridPanel)

    GridPanel 折叠/展开行 Ext.Net GridPanel的行支持折叠/展开功能,这个功能个人觉得还说很有用处的,尤其是数据中包含图片等内容的时候. 下面来看看效果: 使用行折叠/展开功能之 ...

  5. 【Ext.Net学习笔记】05:Ext.Net GridPanel的用法(包含Filter、Sorter、Grouping、汇总(Summary)的用法)

    GridPanel是用来显示数据的表格,与ASP.NET中的GridView类似. GridPanel用法 直接看代码: <ext:GridPanel runat="server&qu ...

  6. 【Ext.Net学习笔记】04:Ext.Net中使用数据、Ext.Net Store的用法、Ext.Net ComboBox用法

    之前的几篇文章都是介绍Ext.Net较为基础的东西,今天的这一篇将介绍数据的一些用法,包括XTemplate绑定数据.Store(Modal.Proxy).ComboBox的用法等. XTemplat ...

  7. 【Ext.Net学习笔记】03:Ext.Net DirectEvents用法详解、DirectMethods用法详解

    Ext.Net通过DirectEvents进行服务器端异步的事件处理.[Ext.Net学习笔记]02:Ext.Net用法概览.Ext.Net MessageBus用法.Ext.Net布局 中已经简单的 ...

  8. 【Ext.Net学习笔记】02:Ext.Net用法概览、Ext.Net MessageBus用法、Ext.Net布局

    Ext.Net用法概览 Ext.Net还是很强大,如果运用熟练可以极大的提高编程效率.如果你也要学习Ext.Net,原文博主推荐书籍:<Ext.Net Web 应用程序开发教程>,是英文的 ...

  9. 【Ext.Net学习笔记】01:在ASP.NET WebForm中使用Ext.Net

    Ext.NET是基于跨浏览器的ExtJS库和.NET Framework的一套支持ASP.NET AJAX的开源Web控件,包含有丰富的Ajax运用,其前身是Coolite. 下载地址:http:// ...

随机推荐

  1. WC项目要求

    #include "stdio.h" #include "string.h" #include "stdlib.h" int charcal ...

  2. C# 里的if/switch

    今天又重新翻了翻C# Step by Step if 语句 if(bool 表达式) { 语句块: } else { 语句块: } switch(day) { case 0: dayName=&quo ...

  3. 关于mongoldb 启动时显示 add already in use

    1 .不要在国内网上查找 浪费时间 2. stack over flow 是个不错的选择 进入正题. 终端输入: ps wuax | grep mongo 会看到: 随后:kill 447

  4. C++调用V8与JS交互

    C++访问JS函数 C++部分: /** * COMPILE foo.js AT THE FIRST COMMAND PROMPT TO RUN foo.js */ #include <v8.h ...

  5. Android编译系统参考手册

    build/core/clear_vars.mk Clear out values of all variables used by rule templates 清除LOCAL变量,每个模块的And ...

  6. 【转】Duff's Device

    在看strcpy.memcpy等的实现发现用了内存对齐,每一个word拷贝一次的办法大大提高了实现效率,参加该blog(http://totoxian.iteye.com/blog/1220273). ...

  7. HDU 5398 (动态树)

    Problem GCD Tree 题目大意 n个点的无向完全图,标号1~n,每条边u-->v 的权值为gcd(u,v),求其最大生成树,输出最大边权和. n<=10^5,有多个询问. 解题 ...

  8. LayaAir引擎——(十)

    var k = new Array(); var l = new Array(); var m = new Array(); var zhiyeCurosr = 0; function zyinit( ...

  9. IE10、IE11 ASP.Net 网站无法写入Cookie 问题

    在做项目的时候遇上一个奇怪的问题,这个项目是用前端DWZ框架+MVC框架做的,在IE10和IE11上, 用户登录之后,操作界面中的任何操作,都无法操作,抛出异常,经过查找分析发现, 只有在IE10和I ...

  10. Pyhon环境搭建-window

    1.安装python3.4.3版本 地址:(64位)https://www.python.org/ftp/python/3.4.3/python-3.4.3.amd64.msi (32位)http:/ ...