转自:http://www.ext.net.cn/forum.php?mod=viewthread&tid=11931

点击一个按钮就出现一行控件,点击删除控件就可将一行控件删除,这是不是你一直以来都想实现的需求呢?

本帖就来解答这个问题:

首先先放几个效果图,看你是不是需要这样的需求,如果是再往下看帖哦。

接下来是实现的方法:

  • 上面的第一张图(默认状态下)是在需要在前台布局的 代码如下

    1. <ext:Window ID="winEdit">
    2. Width="700" Hidden="true" Modal="true" Title="課件地址" AutoScroll="true" ButtonAlign="Center">
    3. <items>
    4. <ext:panel ID="pnl_urls">
    5. <content>
    6. <table>
    7. <tbody>
    8. <tr>
    9. <td>
    10. <ext:Label ID="lbl_url_txt">
    11. <ext:Button ID="btn_addurl">
    12. <Listeners>
    13. <Click Fn="newurl" />
    14. </Listeners>
    15. </ext:Button>
    16. </td>
    17. </tr>
    18. <tr>
    19. <td>
    20. <ext:Panel>
    21. <Items>
    22. <ext:TextField ID ="UrlName_1">
    23. </Items>
    24. </ext:Panel>
    25. </td>
    26. <td>
    27. <ext:Panel ID ="pnl_classurl">
    28. <items>
    29. <ext:TriggerField ID ="url_1">
    30. <Listeners>
    31. <TriggerClick Fn ="delurl" />
    32. </Listeners>
    33. </ext:TriggerField>
    34. </items>
    35. </ext:Panel>
    36. </td>
    37. </tr>
    38. </tbody>
    39. </table>
    40. </content>
    41. </ext:panel>
    42. </items>
    43. <buttons>
    44. <ext:Button ID ="btn_saveurls">
    45. <Listeners>
    46. <Click Handler ="SaveEdit()" />
    47. </Listeners>
    48. </ext:Button>
    49. <ext:Button ID ="btn_cancelurls">
    50. <Listeners>
    51. <Click Handler ="CancelEdit()" />
    52. </Listeners>
    53. </ext:Button>
    54. </buttons>
    55. </ext:Window>

    复制代码

  • 上面的第二张图(新增行状态下)是在页面上"新增课件地址"的按钮上家点击事件的完成的 js代码如下
    1. //新增課件地址文本框
    2. function>
    3. panel.doLayout();
    4. //課件標籤
    5. var>
    6. pnl.doLayout();
    7. var>
    8. var>
    9. var>
    10. var Nameid = "UrlName_" +>
    11. id:>
    12. trigger.setValue(ismark);
    13. }
    14. panel.insert(parseInt(items + 1),>
    15. label = "課件" + (parseInt(panel.items.items[items - 1].id.split('_')[1]) + 1).toString();
    16. }
    17. var>
    18. id: Nameid,
    19. fieldLabel: " ",
    20. labelWidth: 5,
    21. labelSeparator: " ",
    22. width: 100,
    23. value: label
    24. })
    25. pnl.insert(parseInt(items + 1), txt);
    26. pnl.doLayout();
    27. }

    复制代码

  • 上面的第三张图(删除状态下)是在页面新增完的行最右边的“X”点击事件完成的 js代码如下
    1. //移除課件地址文本框
    2. function>
    3. var>
    4. if (panel.items.length > 1) {
    5. panel.remove(el);
    6. panel.doLayout();
    7. pnl.remove(Ext.getCmp("UrlName_" +>
    8. var>
    9. if (panh <= "380") {
    10. if (winh >= "140") {
    11. Ext.getCmp("winEdit").setHeight(parseInt(Ext.getCmp("winEdit").getHeight()) - 25);
    12. }
    13. }
    14. }

    复制代码

[Ext.Net]动态生成控件(二)--js动态添加文本框的更多相关文章

  1. Silverlight动态生成控件实例

    刚学习Silverlight,做了一个动态创建控件的实例 实现结果:根据已有的控件类名称,得到控件的实例化对象 实现思路1:就是定义一个模板文件,将类名做为参数,在silverlight中使用Srea ...

  2. Asp.net web form 动态生成控件的注意事项

    Asp.net页面生命周期 页面初始化          Page_Init   加载View State      LoadViewState    回发数据处理      LoadPostData ...

  3. Asp.net中使用文本框的值动态生成控件的方法

    这篇文章主要介绍了Asp.net中使用文本框的值动态生成控件的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下 看到一个网友,有论坛上问及,动态的生成checkbox控件,在文本框中输入一个“花 ...

  4. WPF: WrapPanel 容器的数据绑定(动态生成控件、遍历)

    原文:WPF: WrapPanel 容器的数据绑定(动态生成控件.遍历) 问题:        有一些CheckBox需要作为选项添加到页面上,但是数目不定.而为了方便排版,我选择用WrapPanel ...

  5. Winforn中使用代码动态生成控件

    场景 有时候需要根据配置文件在窗体中使用代码动态生成控件. 比如读取xml配置文件中的节点数量,然后在窗体中生成指定数量的RadioGroup控件. 实现 新建一个窗体,在窗体的加载完之后的事件中 p ...

  6. Unity UGUI动态生成控件

    一. 首先你得先清楚RectTransform组件的一些程序控制 1. 先得到UGUI控件上面的RectTransform组件 RectTransform rtr = gameObject.GetCo ...

  7. (五)ASP.NET中动态生成控件

    今天被问到如何在ASP.NET 页面中动态创建一批控件,并且希望在后续代码中能访问到这些动态创建的控件.我用下面的例子来解释这个问题 ================================= ...

  8. (四)动态生成控件,点击button添加控件

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. c# winform动态生成控件与获取动态控件输入的值

    差不多有2年没有写winform程序,一直都是写bs.最近项目需要,又开始着手写一个小功能的winform程序,需要动态获取xml文件的节点个数,生成跟节点个数一样的textbox, 最后还要获取操作 ...

随机推荐

  1. JavaScript 调试

    在编写 JavaScript 时,如果没有调试工具将是一件很痛苦的事情. JavaScript 调试 没有调试工具是很难去编写 JavaScript 程序的. 你的代码可能包含语法错误,逻辑错误,如果 ...

  2. 分布式一致性协议Raft原理与实例

    分布式一致性协议Raft原理与实例 1.Raft协议 1.1 Raft简介 Raft是由Stanford提出的一种更易理解的一致性算法,意在取代目前广为使用的Paxos算法.目前,在各种主流语言中都有 ...

  3. Shell脚本了解

    一.什么是Shell Shell 是一个用C语言编写的程序,它是用户使用Linux的桥梁.Shell既是一种命令语言,又是一种程序设计语言. Shell 是指一种应用程序,这个应用程序提供了一个界面, ...

  4. Python rich comparisons 自定义对象比较过程和返回值

    Classes wishing to support the rich comparison mechanisms must add one or more of the following new ...

  5. 28 自定义View流式布局

    流式布局每行的行高以本行中最高的元素作为高,如果一个元素放不下到一行时直接到第二行 FlowLayoutView package com.qf.sxy.customview05.widget; imp ...

  6. 将String转换为其表示的路径画到屏幕上

    关于这个问题,我已经在另一篇blog中有所提及: CoreText精彩文字轮廓绘制动画的一点改进 不过原有的转换代码使用Obj-C写的,在这里我们尝试将其转换为Swift语言,然后利用它实现一个测试小 ...

  7. [Flask]学习杂记--模板

    这个学习杂记主要不是分享经验,更多是记录下falsk的体验过程,以后做东西在深入研究,因为django之前用的时间比较长,所以很多概念都是一看而过,做个试验了解下flask的功能. flask中使用是 ...

  8. T-SQL中的APPLY用法(半翻译)

    本文接上文:T-SQL 中的CROSS JOIN用法(半翻译) 同样可用于微软认证70-461: Querying Microsoft SQL Server 2012考试的学习中. --------- ...

  9. hive的strict模式;where,group by,having,order by同时使用的执行顺序

    主要限制三种情况 (1) 有partition的表查询需要加上where子句,筛选部分数据实现分区裁剪,即不允许全表全分区扫描,防止数据过大 (2) order by 执行时只产生一个reduce,必 ...

  10. leetcode 3 Longest Substring Without Repeating Characters最长无重复子串

    Given a string, find the length of the longest substring without repeating characters. For example, ...