我不确定这个功能是否被正确调用。但是我在asp.net gridview中有一个单行文本框。当用户点击该文本框时,我想要弹出一个更大的多行文本框,这样他们就可以看到整个内容并对其进行编辑。一旦焦点转移到另一个控件,这个展开的视图就会消失。
那里是否有控件允许这样做?如果没有,我该如何实施?
编辑:我正在寻找与TextBoxCalendar Extender如何工作类似的功能,但我不想使用日历,而是要使用多行文本框进行弹出。答案 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的值,从而实现多行。