网页按钮显示不出来,网页按钮代码( 三 )


<asp:LinkButton ID="LinkButton1" runat="server" OnClick="LinkButton1_Click">LinkButton</asp:LinkButton>直接放到form标记中生成的html代码
<script type="text/javascript">
<!--
var theForm = document.forms['form1'];
if (!theForm) {
theForm = document.form1;
}
function __doPostBack(eventTarget, eventArgument) {
i f (!theForm.onsubmit (theForm.onsubmit() != false)) {
theForm.__EVENTTARGET.value = https://minzuwang.com/read/eventTarget;
theForm.__EVENTARGUMENT.value = https://minzuwang.com/read/eventArgument;
theForm.submit();
}
}
// -->
</script>
<input language="javascript" onclick="__doPostBack('delete','')" name="delete" type="button" id="delete" value=https://minzuwang.com/read/"Server button" />
<input type="button" onclick="return DeleteCheck(this)" id="Button1" value=https://minzuwang.com/read/"Client button" />
<input name="Button2" type="submit" id="Button2" onclick="return DeleteCheck(this)" value=https://minzuwang.com/read/"Server submit" />
<input type="submit" onclick="return DeleteCheck(this)" id="Button3" value=https://minzuwang.com/read/"Client submit" />
<button id="button4" onclick="return DeleteCheck(this)" value=https://minzuwang.com/read/"Button-Button">Button-Button
<input type="submit" name="button5" value=https://minzuwang.com/read/"Asp:button" onclick="return DeleteCheck(this);" id="button5" />
<a id="LinkButton1" href="javascript:__doPostBack('LinkButton1','')">LinkButton</a>
这里有可以看出几点:
1、当html服务器控件在服务器端添加了服务器事件后生成的代码变为:onclick="_doPostBack()",实际上是调用脚本把整个窗体提交到服务器(如果没有添件服务器事件而只是添加了runat="server"是不会发送到服务器端的)这里注意如果要在html服务器控件中添加一个客户端事件如上面的 <input runat="server" type="button" id="delete" value=https://minzuwang.com/read/"Server button" onserverclick="delete_ServerClick" />变成 那样生成的html代码变成 提示有脚本错误原因是onclick事件执行了2个脚本且书写的格式不正确 。onclick="return DeleteCheck(this);_doPostBack()"这样的话就只能执行第一个函数而第二个函数就不能执行了(return).如果用onclick="return DeleteCheck(this),_doPostback()"是指2个函数同时都要执行没有影响(相当于一条语句) 。在我的一个项目中需要对于控件进行区分总结,我在网上找了找加上自己的实际测试总结如下:
asp.net之所以现在开发方便和快捷,关键是它有一组强大的控件库,包括web服务器控件,web用户控件,web自定义控件,html服务器控件和html控件等 。这里我主要说说html控件、html服务器控件和web服务器控件的区别 。
1、html控件:就是我们通常的说的html语言标记,这些语言标记在已往的静态页面和其他网页里存在,不能在服务器端控制的,只能在客户端通过javascript和vbscript等程序语言来控制 。<input type="button" id="btn" value=https://minzuwang.com/read/"button"/>
2、html服务器控件:其实就是html控件的基础上加上runat="server"所构成的控件.它们的注意区别是运行方式不同,html控件运行在客户端,而html服务器控件是运行在服务器端的 。参考其他资料是这样说的: 当ASP.NET 网页执行时,会检查标注有无runat 属性,如果标注没有设定,那么Html标注就会被视为字符串,并被送到字符串流等待送到客户端,客户端的浏览器会对其进行解释;如果Html标注有设定runat="server" 属性,Page 对象会将该控件放入控制器,服务器端的代码就能对其进行控制,等到控制执行完毕后再将Html服务器控件的执行结果转换成Html标注,然后当成字符串流发送到客户端进行解释<input id="Button" type="button" value=https://minzuwang.com/read/"button" runat="server" />
3、web服务器控件:也称asp.net服务器控件,是Web Form编程的基本元素,也是asp.net所特有的 。它会按照client的情况产生一个或者多个html控件,而不是直接描述html元素 。如: <asp:Button ID="Button2" runat="server" Text="Button"/>那么它和html服务器控件有什么区别呢?参照其他网页的资料看法如下:

推荐阅读