首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MultiLine TextBox未提交

MultiLine TextBox未提交
EN

Stack Overflow用户
提问于 2011-08-10 23:10:29
回答 3查看 987关注 0票数 0

我正在编写一个asp.net页面,提交表单时遇到了一些问题。我得到的是一个多行文本框。当用户点击enter时,表单应该被提交,但是它却插入了新的一行(这通常是人们遇到的相反的问题)。下面是相关的主体代码:

代码语言:javascript
复制
<div align="left">
        Name:

            <asp:TextBox ID="Name" runat="server"></asp:TextBox>

            <asp:Button ID="Clear" runat="server" onclick="Clear_Click" 
                Text="Clear Chat Log" UseSubmitBehavior="False" />

        </div>
        <br />
        <asp:UpdatePanel runat="server" UpdateMode="Conditional">
            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="UpdateTimer" EventName="Tick"/>
                <asp:AsyncPostBackTrigger ControlID="Go" EventName="Click" />
            </Triggers>
            <ContentTemplate>
                <asp:TextBox id="Chat" runat="server" ReadOnly="true" TextMode="MultiLine" Width="400" Height="630" />
                <asp:Timer runat="server" Interval="500" OnTick="Timer_Tick" ID="UpdateTimer"/>
            </ContentTemplate>
        </asp:UpdatePanel>
        <asp:UpdatePanel runat="server" UpdateMode="Conditional">
            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="Go" EventName="Click" />
            </Triggers>
            <ContentTemplate>
                <br/>
                <asp:TextBox id="Message" runat="server" Width="400" Wrap="true" Height="40px" 
                    TextMode="MultiLine" AutoCompleteType="Disabled" AutoPostBack="True"/>
                <asp:Button id="Go" runat="server" Text="Go" Width="40px" Height="40px" OnClick="goClicked" UseSubmitBehavior="true"/>
            </ContentTemplate>
        </asp:UpdatePanel>

我猜问题出在更新面板上。基本上,如果用户在"Message“文本框中点击enter,就会触发"Go”按钮(这两个文本框都在列表的底部)

谢谢你的帮助,麦克斯

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-08-11 13:53:13

您需要在多行文本框中捕获Enter键,然后使用Javascript提交表单。示例:

代码语言:javascript
复制
<input type="text" id="txtMultiline" onkeydown="if(event.keyCode == 13) document.getElementById('btnSubmit').click()"/>
票数 1
EN

Stack Overflow用户

发布于 2011-08-10 23:17:13

试试Ctrl+Enter。此外,Facebook消息页面也有类似的行为,但你可以选择模式:“快速回复”vs按钮。

票数 0
EN

Stack Overflow用户

发布于 2011-08-10 23:27:49

添加另一个TextBox,如下所示:

代码语言:javascript
复制
<asp:TextBox ID="txtSubmitOnEnter" runat="server" Width="0" style="visibility:hidden;display:none;" />      

在那之后它应该会工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7013143

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档