0

我需要能够从 TextChanged 事件更改 GridView 模板字段中 TextBox(s) 的值。因此,用户可以在 Gridview 之外的 TextBox 中输入一些文本,然后 GridView 中的 TextBox(s) 会更新为用户输入的内容。

这是我需要做的:

protected void TextBox1_TextChanged(object sender, EventArgs e)
{
    template_text_box1.Text( in template field ) = TextBox1.Text << (TextBox1)( outside of gridview )
}

我试过了FindControl。这需要在不使用任何 GridView 事件的情况下发生。我只是难过。有人能指出我正确的方向吗?也许一些JavaScript?

4

2 回答 2

0

我相信您会想要为显示定义一个单独的 TextBox 并执行以下操作:

double value1;

private void template textBox1_TextChanged(object sender, TextChangedEventArgs e)
{
    if textBox1.Text (Double.TryParse(textBox1.Text, out value1))
    {
        textBox15 = value1.ToString();
    }
}

这样,您可以在网格之外创建其他 TextBox,并能够调用它并将其设置为输入的值。

于 2013-05-01T17:29:25.060 回答
0

在 .aspx 页面上,在 GridView 列模板 TextBox 中添加一个 CSS 类。

<asp:TextBox ID="TextBox1" runat="server" CssClass="box-to-change" Text=""></asp:TextBox>

同样在 .Aspx 页面上添加一个使用 jQuery 的 JavaScript 函数:

<script type="text/javascript">
function updateAllTextboxes(value)
{
    $('input.box-to-change').val(value);
}
</script>

在代码隐藏中添加 JavaScript 函数作为客户端OnChange事件(不需要 PostBack)。

otherTextBox.Attributes["onchange"] = "updateAllTextboxes(this.value)";
于 2013-05-01T17:30:55.893 回答