按钮和asp之间的区别:按钮onclick

时间:2013-01-13 18:24:35

标签: asp.net aspbutton

我是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>

5 个答案:

答案 0 :(得分:21)

第一个代码是服务器端代码。当您在webform中添加标记asp:button时,asp.net将为您呈现input type="button",当您单击此按钮时,它会向同一页面提交帖子(这称为{{ 1}})并将处理与此按钮关联的生命周期和asp.net事件。这同样适用于每个服务器控件,例如postback(呈现TextBoxes),input type='text'(呈现div),Panels(呈现Checkboxes),{{ 1}}(渲染input type='checkbox')等......

在第二个代码中,您拥有第一个将呈现的代码(Labels),但与客户端javascript中的事件相关联。

您还可以在标记spans中关联客户端事件,查看input type = 'button'属性。

答案 1 :(得分:5)

第一个是服务器端控件,事件处理程序在C#中的服务器上执行。单击该按钮将导致回发,表单中的所有信息将发布到服务器进行处理,包括调用click事件处理程序。

第二个是完全客户端,事件处理程序在JavaScript中以浏览器执行。

答案 2 :(得分:5)

asp:Button是一个asp.net服务器控件,用于在服务器端触发事件。

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

是提交类型的客户端按钮, 但它也可以作为服务器端按钮添加

runat="server"onserverclick="eventname"

答案 3 :(得分:3)

根据我的理解,你必须记住,有一个将执行的cliend side代码,例如浏览器中的javascript,以及将在服务器上执行的asp / c#代码。

所以有这个控制权:

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

Button1_Click将在服务器上执行,另一方面,在微软世界中它是IIS 你只有一个纯粹的html控件,你可以为click事件连接一个javascript函数

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

因此服务器端与此部分无关,此代码将在您的计算机上,在您的浏览器中执行。

答案 4 :(得分:1)

一个我的功能:así:

1.- Enelbotó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)
相关问题