关于Ext后台生成控件和得到控件值的方法总结
2013-05-06 21:09
441 查看
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="DyControl.aspx.cs" Inherits="EMOEP.DyControl" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <%@ Register Namespace="Ext.Net" Assembly="Ext.Net" TagPrefix="ext" %> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <script type="text/javascript" language="javascript"> function getNumbyName() { var x = document.getElementsByName("txt"); var arr = new Array(); for (var i = 0; i < x.length; i++) { arr[i] = x[i].value; } return arr; } </script> </head> <body> <form runat="server" method="post"> <ext:ResourceManager runat="server" /> <ext:Panel ID="plTest" runat="server"> </ext:Panel> </form> </body> </html>
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using Ext.Net; namespace EMOEP { public partial class DyControl : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { string[] txt = new string[] {"txt1","txt2","txt3" }; for (int i = 0; i < txt.Length; i++) { TextField txtft = new TextField { ID = txt[i], FieldLabel = txt[i], Width = 200, LabelWidth = 50 , Name="txt",Text ="321"}; plTest.Items.Add(txtft); } Ext.Net.Button btn1 = new Ext.Net.Button { ID = "btn1", Text = "getValue方法", Width = 100 }; Ext.Net.Button btn2 = new Ext.Net.Button { ID = "btn2", Text = "FindControl方法", Width = 100 }; Ext.Net.Button btn3 = new Ext.Net.Button { ID = "btn3", Text = "RequestForm方法", Width = 100 }; Ext.Net.Button btn4 = new Ext.Net.Button { ID = "btn4", Text = "JS方法", Width = 100 }; //#{控件ID}.getValue()的方法获得控件的值,但是参数不是动态获得 string param = "#{txt1}.getValue(),#{txt2}.getValue(),#{txt3}.getValue()"; btn1.Listeners.Click.Handler = "EX.btnTestClick1("+ param +");"; plTest.Items.Add(btn1); /* 生成控件的方法(注意:生成控制的方法,不能写在IsPostBack里面) Ext.Net.TextField tf = new TextField(); tf.ID = "txt" + strName; this.你的容器.Items.Add(tf); 后台获取值的方法 Ext.Net.TextField tf = (Ext.Net.TextField)this.你的容器.FindControl("ID"); */ btn2.Listeners.Click.Handler = "EX.btnTestClick2();"; plTest.Items.Add(btn2); /* Request.Form[控件Name] 此外System.Collections.Specialized.NameValueCollection nc = new System.Collections.Specialized.NameValueCollection(Request.Form); Response.Write(nc.GetValues("txtname")[0].ToString());此方法只能对<input type="text" />等类型的控件数据进行获取,对于select控件,如果value和text不一样,只能获取value */ btn3.Listeners.Click.Handler = "EX.btnTestClick3();"; plTest.Items.Add(btn3); //JS+Ext.Net.DirectMethod方法实现后台代码获取前台控件内容** btn4.Listeners.Click.Handler = "var arr =getNumbyName();EX.btnTestClick4(arr);"; plTest.Items.Add(btn4); } [DirectMethod] public void btnTestClick1(string str1, string str2, string str3) { X.Msg.Alert("getValue方法", string.Format("txt1:{0};txt2:{1};txt3:{2}", str1, str2, str3)).Show(); } [DirectMethod] public void btnTestClick2() { Ext.Net.Button a = (Ext.Net.Button)this.plTest.FindControl("btn1"); TextField b = (Ext.Net.TextField)this.plTest.FindControl("txt1"); X.Msg.Alert("FindControl方法", string.Format("txt1:{0};", a.Text.ToString()+b.Text.ToString())).Show(); } [DirectMethod] public void btnTestClick3() { string str = Request.Form["txt"]; X.Msg.Alert("RequestForm方法", string.Format("txt123:{0};", str)).Show(); } [DirectMethod] public void btnTestClick4(string[] arr) { string str = arr.ToString(); X.Msg.Alert("JS方法", string.Format("txt123:{0};", str)).Show(); } } }
相关文章推荐
- 关于.net生成静态页面的方法总结
- coolite(ext.net)服务器控件的后台事件方法 ,浅析
- 关于 ExtAspNet 控件 Tree 嵌套在 Region Panel 内 OnNodeCommand 无响应的问题解决方法
- 构造网站后台,我的EXT+EFS模式(一)----配置环境与初试动态生成控件
- Ext中Grid得到选择行数据的方法总结
- Asp.net_关于如何利用编译器把[.cs]文件生成动态链接库[.dll]文件方法的总结
- 关于.net生成静态页面的方法总结
- 关于后台生成验证码后,在前台获取cookie的方法
- C# Ext关于前台调用后台的方法
- 关于最小生成树中的kruskal算法中判断两个点是否在同一个连通分量的方法总结
- 关于datagrid中控件利用js调用后台方法事件的问题
- ajax请求后台得到json数据后动态生成树形下拉框的方法
- Ajax 控件 的使用 以及js调用后台方法【自己总结一下】
- 关于.NET TextBox 前台JS赋值 后台得不到值的处理方法总结
- Ext中Grid得到选择行数据的方法总结
- js调用.net后台事件,和后台调用前台等方法总结
- [导入]在服务器端得到CheckBoxList控件最后选择项的方法
- 关于VNC漏洞的利用方法总结
- 总结一些关于fatal error RC1004: unexpected end of file found错误的解决方法
- 关于css清除元素浮动的方法总结(overflow clear floatfix)