Подтвердить что ты не робот

Разница между кнопкой и asp: кнопка onclick

Я новичок в разработке в asp.net для создания веб-сайтов. Поэтому у меня есть некоторые проблемы с пониманием разницы между следующим. В чем разница между кнопкой asp: Button и кнопкой ввода?

Код 1
код aspx

<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />  

Codebehind

protected void Button1_Click(object sender, EventArgs e)
{
    //Do somthing
}  

Код 2
код aspx

<input id="Submit1" type="submit" value="submit" onclick="return Submit1_onclick()" />  


<script language="javascript" type="text/javascript">
// <![CDATA[

function Submit1_onclick() {
    //Do somthing
}

// ]]>
</script>
4b9b3361

Ответ 1

Первый код - это код на стороне сервера. Когда вы добавляете тег asp:button в свою веб-форму, asp.net будет отображать input type="button" для вас, и когда вы нажмете эту кнопку, он отправит сообщение на ту же страницу (это называется postback) и будет обработка жизненного цикла и событие asp.net, связанное с этой кнопкой. То же самое верно для каждого управления сервером, такого как TextBoxes (render input type='text'), Panels (отображает divs), Checkboxes (render input type='checkbox'), Labels (render spans) и т.д..

Во втором коде у вас есть код, который первый будет отображать (input type = 'button'), но связанный с событием на клиентском javascript.

Вы также можете связать событие на стороне клиента в теге asp:button, взгляните на свойство OnClientClick.

Ответ 2

Первый - это элемент управления на стороне сервера, и обработчик события выполняется на сервере в С#. Щелчок по кнопке вызовет обратную передачу, и вся информация в форме будет отправлена ​​на сервер для обработки, включая вызов обработчика события click.

Вторая полностью клиентская сторона, и обработчик события выполняется в браузере в JavaScript.

Ответ 3

asp:Button - это серверный элемент asp.net, который запускает событие на стороне сервера.

<input id="Submit1" type="submit"

- кнопка клиентской стороны типа submit, но он может действовать как кнопка на стороне сервера, добавив

runat="server" и onserverclick="eventname"

Ответ 4

к моему пониманию, вы должны иметь в виду, что будет выполняться код стороны cliend, например javascript в вашем браузере, и код asp/С#, который будет выполняться на сервере.

Итак, имея этот контроль:

 <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" /> 

Button1_Click будет выполняться на сервере, в мире Microsoft - это IIS, с другой стороны у вас есть только чистый элемент управления html, где вы подключаете функцию javascript для события click

 <input id="Submit1" type="submit" value="submit" onclick="return Submit1_onclick()" /> 

Таким образом, сторона сервера не имеет ничего общего с этой частью, этот код будет выполняться на вашем компьютере в вашем браузере.

Ответ 5

Как мне нравится:

1.- En el botón:

 <input type="submit" id="btnAccept" value="Log In" runat="server" onserverclick="btnAccept_Click">

2.- En el codebehind:

Protected Sub btnAccept_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)