asp.net控件扩展文本框?

时间:2011-04-27 18:34:01

标签: asp.net user-controls textbox

我不确定这个功能是否被正确调用。但是我在asp.net gridview中有一个单行文本框。当用户点击该文本框时,我想要弹出一个更大的多行文本框,这样他们就可以看到整个内容并对其进行编辑。一旦焦点转移到另一个控件,这个展开的视图就会消失。

那里是否有控件允许这样做?如果没有,我该如何实施?

编辑:我正在寻找与TextBoxCalendar Extender如何工作类似的功能,但我不想使用日历,而是要使用多行文本框进行弹出。

4 个答案:

答案 0 :(得分:1)

如果你想在没有回发的情况下这样做(我建议你),你需要看看使用javascript / jquery。

下面的链接是一个很好的方法:

以下是他们所称的功能:

   function expand(width,height)
    {

    document.getElementById("text_output").cols = width;
    document.getElementById("text_output").rows = height;

    }

.net AJAX工具包中可能还有一个控件可以执行此操作,但javascript路径可能更简单。

更新:

如果您正在寻找弹出功能,那么我肯定会去jQuery路线。通常,他们会指定您希望在某个事件上弹出的div。下面的链接为您提供了许多模式弹出插件,您可以使用它们来查看:

答案 1 :(得分:1)

This blog post有一个使用jQuery的弹性文本框。据作者说,

  

...当TextBox获得焦点时,它将扩展到指定的高度和宽度,然后当它失去焦点时,它将收缩回到它更紧凑的尺寸。

答案 2 :(得分:0)

如果你在谈论一个asp.net文本框,你可以像这样指定行数:

    <asp:TextBox id="tb6" rows="5" TextMode="multiline" runat="server" />

有关详细信息,请参阅this link

答案 3 :(得分:0)

您可以使用文本框控件,并添加一个onclick事件处理程序,将“rows”属性更改为大于1的值,从而实现多行。