Обработка действия отправки двух TextBox - PullRequest
0 голосов
/ 29 октября 2010

У меня есть страница ASP.net.Имеет вкладку Ajax Toolkit.Это имеет вкладки.Там есть пользовательские элементы управления ascx, которые я написал.

У меня есть текстовое поле, которое выполняет действие поиска.Это объявлено так:

            <asp:TextBox ID="txtPrereqSearch" runat="server"
                ontextchanged="txtPrereqSearch_TextChanged"></asp:TextBox>

Ничего особенного.Этот формат работает уже несколько месяцев.Там нет кнопки отправки.Это просто отправляет назад, когда я нажимаю ввод.Проблема возникла, когда я добавил второй пользовательский элемент управления, используя функцию того же типа.Теперь браузеры не выполняют обратную передачу, когда я что-то набираю в любом из этих текстовых полей и нажимаю клавишу ввода.

Кажется, что браузеры имеют способ обработки по умолчанию одного текстового поля в одной форме, но это поведение меняется, когда число достигает двух.

Есть ли простой способ обойти это?Я думаю, я могу создать скрытую кнопку отправки, но, похоже, есть лучший способ справиться с этим, когда функциональность находится в двух отдельных пользовательских элементах управления.

Ваш отзыв приветствуется!

Ответы [ 2 ]

0 голосов
/ 29 октября 2010

Ответ был несколько иным, чем я ожидал, но философски напоминал мою первоначальную идею, которую подкрепил @jamietre.

Мне пришлось окружить элементы управления тегом <asp:Panel> с атрибутом DefaultButton. A-like-a так:

<asp:Panel ID="ButtonPanel" runat="server" DefaultButton="btnSubmit">
                        <asp:Label ID="Label1" runat="server" Text="Course:"></asp:Label>
                        <asp:TextBox ID="txtPrereqSearch" runat="server"
                            ontextchanged="txtPrereqSearch_TextChanged"></asp:TextBox>
                            <asp:TextBoxWatermarkExtender ID="txtPrereq_TextBoxWatermarkExtender" 
                    runat="server" Enabled="True" TargetControlID="txtPrereqSearch" 
                    WatermarkCssClass="Watermark" WatermarkText="e.g., MATH201"></asp:TextBoxWatermarkExtender>
                        <asp:Button ID="btnSubmit" CssClass="InvisibleSubmit" runat="server" Text="Submit" OnClick="txtPrereqSearch_TextChanged"/>
                    </asp:Panel>
0 голосов
/ 29 октября 2010

Проверьте это: http://www.allasp.net/enterkey.aspx

Кажется, что стандартное поведение без кнопки отправки зависит от браузера, и поведение действительно может зависеть от количества элементов управления вводом.

Iдобавит скрытую кнопку «отправить» (например, style="display:none;"), которая должна гарантировать, что она всегда будет отправлена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...