【问题标题】:asp:GridView textbox always return blank valueasp:GridView 文本框总是返回空白值
【发布时间】:2010-05-14 15:05:17
【问题描述】:

我使用以下代码向 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,

【问题讨论】:

  • 您在什么时候尝试获取更新后的值?
  • 我有提交按钮,该按钮调用服务器端函数,该函数调用 gridviewrow 的查找控件

标签: .net asp.net gridview


【解决方案1】:

我在这里找到了解决这个问题的方法: http://www.eggheadcafe.com/software/aspnet/29602882/gridview--cant-get-text.aspx

请记住,网页本质上是一个无状态的东西!

当您的GridView 触发事件时,您的Page_Load 方法会执行,然后然后 处理GridView 事件的方法会执行。我仍然不敢相信自己的眼睛,但似乎即使您手动将 GridView 数据源中的值分配给您的文本框,当 GridView.DataBind 方法执行时,用户输入的值也会被清除。

简而言之,如果你的代码和我的一样,你的Page_Load方法中有这两行代码:

myGridView.DataSource = someDataSet;
myGridView.DataBind();

要解决这个问题,改成如下:

如果 (!IsPostBack)
{
myGridView.DataSource = someDataSet;
myGridView.DataBind();
}

顺便说一句,我在 VB.net 工作,所以请告诉我我已为您正确转换为 C#。我想知道这对你也有用!

【讨论】:

    【解决方案2】:

    您试图在哪里访问这些值?如果您在RowUpdated 函数中访问它们,则这些值将为空白。在RowUpdating 期间访问它们,并确保取消更新。

    【讨论】:

    • 我相信我正在处理的页面也存在相同的问题,并且我肯定会从处理 RowUpdating 事件的方法中访问值。
    猜你喜欢
    • 2016-09-28
    • 2014-06-24
    • 2012-07-21
    • 1970-01-01
    • 2021-11-20
    • 1970-01-01
    • 2016-07-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多