.net – asp:GridView文本框始终返回空值
我使用以下代码向gridview添加了一些文本框
<asp:TemplateField HeaderText="STD<br/>ID"> <ItemStyle BackColor="LightBlue" /> <ItemTemplate> <div style="font-size:xx-small; overflow:hidden;"> <asp:TextBox ID="txtStandard" EnableViewState="true" Height="10" Font-Size="XX-Small" Width="50" Text='<%# bind("STANDARD_ID") %>' runat="server"></asp:TextBox> <asp:AutoCompleteExtender ID="AutoCompleteExtenderDemo" runat="server" TargetControlID="txtStandard" ServiceMethod="GetCompletionList" MinimumPrefixLength="1" CompletionInterval="1000" EnableCaching="true" CompletionSetCount="20"> </asp:AutoCompleteExtender> </div> </ItemTemplate> </asp:TemplateField> 我想将更新的值保存到数据库,但是当我尝试使用时访问值 string strs = ((TextBox)TwoHeadedGridView1.Rows[0].FindControl("txtStandard")).Text; 它总是返回所有行的空白值,同样的事情发生在下拉列表中它返回我最初选择的值,即在写下拉框时选择的值,我的asp表单上没有重复的ID,这是我的第一个与自定义gridview的交互,我想以某种方式让它运行, 任何人都可以建议我纠正…… 我确实检查过它是否存在重复的id, 解决方法
我在这里找到了解决这个问题的方法:
http://www.eggheadcafe.com/software/aspnet/29602882/gridview–cant-get-text.aspx 请记住,网页基本上是无状态的东西! 当GridView触发事件时,将执行Page_Load方法,然后执行处理GridView事件的方法.我仍然无法相信自己的眼睛,但似乎即使您手动将GridView数据源中的值分配给TextBoxes,当GridView.DataBind方法执行时,用户输入的值也会被删除. 简而言之,如果您的代码与我的代码类似,那么您的Page_Load方法中包含以下两行代码:
要解决此问题,请将其更改为以下内容:
顺便说一句,我在VB.net工作,所以请让我知道我正确地为你转换为C#.我想听听这对你有用! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 如何在Asp.net MVC 2中替换默认的ModelStat
- 使用ASP.NET Web API进行OAuth Facebook身份验证
- .net – 洋葱建筑中的依赖性解析
- asp.net-mvc-3 – MVC3未终止字符串常量语法错误
- asp.net – 用户控件(ascx)和属性
- asp.net – 禁止在IIS 7.5或.NET中的某些文件上查询参数
- 共享ASP.NET_SessionId和.ASPXAUTH cookie安全风险
- asp.net-mvc-4 – 将复杂的viewmodel发布到控制器
- .net – 如何向用户发送电子邮件确认链接
- 为什么ASP.NET身份中的Logout使用POST而不是GET?