如何使转发器字段可编辑?

时间:2011-09-01 13:26:31

标签: asp.net repeater

我有一个带有转发器的页面..我必须使这一个的一些字段可编辑。我不知道如何将转发器标签转换为文本框..我可以使用jquery来做到这一点吗?

有人进行这种操纵吗?

谢谢..

3 个答案:

答案 0 :(得分:2)

Repeater控件没有像许多其他数据控件那样的EditTemplate。

我建议将编辑字段放在隐藏的占位符中,然后在单击编辑按钮时显示。这将涉及页面回发,然后您必须在ItemCommand处理程序中显示/隐藏相关部分。

另一种方法是在Panel控件中添加编辑字段/文本框,然后通过display: none;隐藏它。然后,您可以使用一些JavaScript将其更改为display: block;。这将避免页面PostBack。

答案 1 :(得分:1)

这可以在Repeater中完成,但DataList控件更简单,同样易于使用。有一篇关于在Datalist控件中执行此操作的MSDN文章,其中包含完整的源代码:http://msdn.microsoft.com/en-us/library/bf5211wb(v=vs.71).aspx

将转发器转换为DataList比在Repeater中使用可编辑的项目更容易。

无论其

直接回答您的问题,这里有一个Codeproject示例:http://www.codeproject.com/KB/aspnet/EditableRepeater.aspx

显示如何使用具有完整编辑功能的Repeater(包括添加和删除项目)。

要查看CodePlex文章中的相关代码,请搜索文本“EditIndex”。相关的代码隐藏总是在此关键字上方和/或下方几行。

答案 2 :(得分:0)

这取决于您希望如何执行此操作:

  1. 使用标准控件可能需要GridView。

  2. 您可以为转发器定义模板,然后将TextBox放在那里 在回发时,您将需要找到动态创建的控件和 你还需要注意保持这些控件的ID 同样的回发。

  3. 另一件事 - 您可以使用textBox替换label jQuery然后通过Ajax请求更新值。

  4. 你决定你需要什么:)无论如何,互联网上有很多样本。