[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, 最后还要获取操作 ...
随机推荐
- django模板语言中的extends,block和include
extends和block一起用 它们用于母版和子版的继承 在母版html中将一些需要替换的部分用{% block xxx %}...{% endblock %}括起来, 在子版html中,在第一行需 ...
- MySQL PHP 语法
MySQL PHP 语法 MySQL 可应用于多种语言,包括 PERL, C, C++, JAVA 和 PHP. 在这些语言中,MySQL在PHP的web开发中是应用最广泛. 在本教程中我们大部分实例 ...
- Ajax PHP JavaScript MySQL实现简易的无刷新在线聊天室
思路 消息显示区 发消息 板块 消息显示 消息发送 优化 显示非重复性的数据 优化显示 加上滚动条 每次都显示最新消息 完整代码 前端代码 数据库表结构 服务器端代码 总结与展望 总结 展望 为更好的 ...
- Java中synchronized的使用实例
一.使用场景 在负责后台开发的时候,很多时候都是提供接口给前端开发人员去调用,会遇到这样的场景: 需要提供一个领奖接口,每个用户名只能领取一次,我们可以将成功领取的用户在数据库用个标记保存起来.如果这 ...
- EBS开发技术之trace
trace的目的 trace主要是用于程序调优,优化,程序bug调试,程序运行系统情况跟踪 trace步骤 1.并发定义中,勾上"启用跟踪" 2.提交一个请求,得到请求编号 注意: ...
- 64位Linux下安装mysql-5.7.13-linux-glibc2.5-x86_64 || 转载:http://www.cnblogs.com/gaojupeng/p/5727069.html
由于公司临时让将Oracle的数据移植到mysql上面,所以让我在公司服务器上面安装一下mysql.下面就是我的安装过程以及一些错误解决思路.其实对于不同版本安装大体都有差不多. 1. 从官网下载 m ...
- Dynamics CRM2013 流程拷贝
在CRM中工作流是一个非常不错的功能,在实际业务场景中能满足各种业务需求.在我们设置一个工作流的时候,同一个实体一个逻辑功能可能需要多个工作流来实现,而多个工作流的不同之处可能只是启动时间或者是步骤中 ...
- 剑指Offer——银行考试
剑指Offer--银行考试 网申简历 一. 银行网申简历主要看哪些方面? 1.职业形象(30%),基本体现为证件照: 2.学校+成绩+校内表现(40%),体现为证书,成绩排名以及任职经历等: 3.校外 ...
- Android JavascriptBridge 详解(二)
原文出自:http://blog.csdn.net/sk719887916/article/details/47189607 Android开发目前现状来说,开发者大部分时间花在UI的屏幕适配上,使用 ...
- iOS下JS与OC互相调用(三)--MessageHandler
使用WKWebView的时候,如果想要实现JS调用OC方法,除了拦截URL之外,还有一种简单的方式.那就是利用WKWebView的新特性MessageHandler来实现JS调用原生方法. Messa ...