[Ext.Net]动态生成控件(二)--js动态添加文本框
转自:http://www.ext.net.cn/forum.php?mod=viewthread&tid=11931
点击一个按钮就出现一行控件,点击删除控件就可将一行控件删除,这是不是你一直以来都想实现的需求呢?
本帖就来解答这个问题:
首先先放几个效果图,看你是不是需要这样的需求,如果是再往下看帖哦。
- 下图是刚开始的状态
- 下图是新增了几行控件的状态
- 下图是删除了第二行的状态
接下来是实现的方法:
- 上面的第一张图(默认状态下)是在需要在前台布局的 代码如下
- <ext:Window ID="winEdit">
- Width="700" Hidden="true" Modal="true" Title="課件地址" AutoScroll="true" ButtonAlign="Center">
- <items>
- <ext:panel ID="pnl_urls">
- <content>
- <table>
- <tbody>
- <tr>
- <td>
- <ext:Label ID="lbl_url_txt">
- <ext:Button ID="btn_addurl">
- <Listeners>
- <Click Fn="newurl" />
- </Listeners>
- </ext:Button>
- </td>
- </tr>
- <tr>
- <td>
- <ext:Panel>
- <Items>
- <ext:TextField ID ="UrlName_1">
- </Items>
- </ext:Panel>
- </td>
- <td>
- <ext:Panel ID ="pnl_classurl">
- <items>
- <ext:TriggerField ID ="url_1">
- <Listeners>
- <TriggerClick Fn ="delurl" />
- </Listeners>
- </ext:TriggerField>
- </items>
- </ext:Panel>
- </td>
- </tr>
- </tbody>
- </table>
- </content>
- </ext:panel>
- </items>
- <buttons>
- <ext:Button ID ="btn_saveurls">
- <Listeners>
- <Click Handler ="SaveEdit()" />
- </Listeners>
- </ext:Button>
- <ext:Button ID ="btn_cancelurls">
- <Listeners>
- <Click Handler ="CancelEdit()" />
- </Listeners>
- </ext:Button>
- </buttons>
- </ext:Window>
复制代码
- 上面的第二张图(新增行状态下)是在页面上"新增课件地址"的按钮上家点击事件的完成的 js代码如下
- //新增課件地址文本框
- function>
- panel.doLayout();
- //課件標籤
- var>
- pnl.doLayout();
- var>
- var>
- var>
- var Nameid = "UrlName_" +>
- id:>
- trigger.setValue(ismark);
- }
- panel.insert(parseInt(items + 1),>
- label = "課件" + (parseInt(panel.items.items[items - 1].id.split('_')[1]) + 1).toString();
- }
- var>
- id: Nameid,
- fieldLabel: " ",
- labelWidth: 5,
- labelSeparator: " ",
- width: 100,
- value: label
- })
- pnl.insert(parseInt(items + 1), txt);
- pnl.doLayout();
- }
复制代码
- 上面的第三张图(删除状态下)是在页面新增完的行最右边的“X”点击事件完成的 js代码如下
- //移除課件地址文本框
- function>
- var>
- if (panel.items.length > 1) {
- panel.remove(el);
- panel.doLayout();
- pnl.remove(Ext.getCmp("UrlName_" +>
- var>
- if (panh <= "380") {
- if (winh >= "140") {
- Ext.getCmp("winEdit").setHeight(parseInt(Ext.getCmp("winEdit").getHeight()) - 25);
- }
- }
- }
复制代码
[Ext.Net]动态生成控件(二)--js动态添加文本框的更多相关文章
- Silverlight动态生成控件实例
刚学习Silverlight,做了一个动态创建控件的实例 实现结果:根据已有的控件类名称,得到控件的实例化对象 实现思路1:就是定义一个模板文件,将类名做为参数,在silverlight中使用Srea ...
- Asp.net web form 动态生成控件的注意事项
Asp.net页面生命周期 页面初始化 Page_Init 加载View State LoadViewState 回发数据处理 LoadPostData ...
- Asp.net中使用文本框的值动态生成控件的方法
这篇文章主要介绍了Asp.net中使用文本框的值动态生成控件的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下 看到一个网友,有论坛上问及,动态的生成checkbox控件,在文本框中输入一个“花 ...
- WPF: WrapPanel 容器的数据绑定(动态生成控件、遍历)
原文:WPF: WrapPanel 容器的数据绑定(动态生成控件.遍历) 问题: 有一些CheckBox需要作为选项添加到页面上,但是数目不定.而为了方便排版,我选择用WrapPanel ...
- Winforn中使用代码动态生成控件
场景 有时候需要根据配置文件在窗体中使用代码动态生成控件. 比如读取xml配置文件中的节点数量,然后在窗体中生成指定数量的RadioGroup控件. 实现 新建一个窗体,在窗体的加载完之后的事件中 p ...
- Unity UGUI动态生成控件
一. 首先你得先清楚RectTransform组件的一些程序控制 1. 先得到UGUI控件上面的RectTransform组件 RectTransform rtr = gameObject.GetCo ...
- (五)ASP.NET中动态生成控件
今天被问到如何在ASP.NET 页面中动态创建一批控件,并且希望在后续代码中能访问到这些动态创建的控件.我用下面的例子来解释这个问题 ================================= ...
- (四)动态生成控件,点击button添加控件
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- c# winform动态生成控件与获取动态控件输入的值
差不多有2年没有写winform程序,一直都是写bs.最近项目需要,又开始着手写一个小功能的winform程序,需要动态获取xml文件的节点个数,生成跟节点个数一样的textbox, 最后还要获取操作 ...
随机推荐
- 操作系统内核Hack:(二)底层编程基础
操作系统内核Hack:(二)底层编程基础 在<操作系统内核Hack:(一)实验环境搭建>中,我们看到了一个迷你操作系统引导程序.尽管只有不到二十行,然而要完全看懂还是需要不少底层软硬件知识 ...
- Android隐式启动Activity可能存在的坑
转载本专栏文章,请注明出处,尊重原创 .文章博客地址:道龙的博客 本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 本篇文章,对隐式启动Activity再做分析. 有些人可能会说了, ...
- O(1)空间内实现矩阵转置
思路: * 每个元素转置前后会形成一个环(一个数字有多个环) * 利用环来移动元素达到转置 * 关键: * 1.得到元素下标的前驱后继, * 2.判断环是否已走过(意味属于一个环的元素一次转 ...
- android addCategory()等说明
一.隐式意图介绍 显式意图我们前面已经提到,形如: Intent intent = new Intent(); intent.setClass(this,Other.class);//此句表示显式意图 ...
- Spring Security安全框架入门篇
一.Spring Security相关概念 1.1..Spring Security介绍: Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安 ...
- 每CPU变量
最好的同步技术是把设计不需要同步的临界资源放在首位,这是一种思维方法,因为每一种显式的同步原语都有不容忽视的性能开销.最简单也是最重要的同步技术包括把内核变量或数据结构声明为每CPU变量(per-cp ...
- 如何将一个二进制的xxx.bin文件轻松转为C语言数组
今天在写一个SPI-flash读写程序,目的是要将一个二进制文件写到SPI_FLASH中,最后通过开机读取,实际上这个.bin文件就是uboot和second-boot的结合体.通过SD卡写到SPI- ...
- 剑指Offer——知识点储备--Linux基本命令+Makefile
剑指Offer--知识点储备–Linux基本命令 1.linux下查看进程占用cpu的情况(top): 格式 top [-] [d delay] [q] [c] [S] [s] [i] [n] 主要参 ...
- Ruby 连接MySQL数据库
使用Ruby连接数据库的过程还真的是坎坷,于是写点文字记录一下. 简介 Ruby简介 RubyGems简介 包管理之道 比较著名的包管理举例 细说gem 常用的命令 准备 驱动下载 dbi mysql ...
- Python Generator 运行细节验证
今天来__next__和send, 改天来throw和close class A: def __setattr__(self, key, val): print('set %s to %s'%(key ...