<входной тип = “кнопка” runat = “сервер”/> не будет работать в ASP.NET

Хорошо, это может казаться глупым, но на ASP.NET .ascx управление, я пытаюсь использовать:

<input type="button" runat="server" />

вместо:

<asp:Button runat="server" />

И это не работает на меня. Этот код:

<asp:Button id="btnBuyCat" runat="server" Text="Buy Cat"
ToolTip="Click to buy a cat" OnClick="btnBuyCat_Click" EnableViewState="false" />

рендеринг следующий HTML: (игнорирующий именованные контейнеры btw)

<input type="submit" id="btnBuyCat" name="btnBuyCat" value="Shopping Cart"
title="Click to buy a cat" />

Это прекрасно главным образом, кроме я хочу input type="button" нет input type="submit".

Я попробовал этот код:

<input type="button" id="btnBuyCat" name="btnBuyCat" runat="server"
value="Buy Cat" title="Click to buy a cat" onclick="btnBuyCat_Click"
enableviewstate="False" />

и получите этот HTML:

<input type="button" id="btnBuyCat" name="btnBuyCat"" value="Buy Cat"
title="Click to buy a cat" onclick="btnBuyCat_Click" />

К сожалению, представленная кнопка не работает. Кроме того, я даже попробовал input type="submit" только для проверки, но если я не использую <asp:Button> Я не могу заставить это работать. Я уверен, что это имеет некоторое отношение к JavaScript.

Есть ли способ использовать регулярную разметку кнопки HTML и a runat="server" в ASP.NET?

6
задан JohnB 10 August 2010 в 01:58
поделиться

3 ответа

Чего вам не хватает, так это атрибута UseSubmitBehavior , например,

<asp:Button id="btnBuyCat" runat="server" Text="Buy Cat" 
UseSubmitBehavior="False" ToolTip="Click to buy a cat" 
OnClick="btnBuyCat_Click" EnableViewState="false" />

Это даст вам обычную кнопку, а не кнопку отправки.

16
ответ дан 8 December 2019 в 05:52
поделиться

Чтобы указать runat = server элемента управления вводом, необходимо также указать идентификатор. Также ошибка, которую вы получаете, вероятно, связана с ошибкой js. Событие onclick в стандартном элементе управления html предполагает определение метода сценария, тогда как кажется, что вы хотели выполнить операцию типа обратной передачи. Вы можете определить функцию javascript в соответствии с именем метода, которое вы даете событию onclick, или использовать метод __doPostBack для явного запуска обратной передачи

<input type="button" runat="server" id="btnTest" />
4
ответ дан 8 December 2019 в 05:52
поделиться

Вы пробовали:

<button type="button" id="btnBuyCat" name="btnBuyCat" value="Shopping Cart"
title="Click to buy a cat"  onclick="btnBuyCat_Click">Click Me!</button>
2
ответ дан 8 December 2019 в 05:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: