当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 实现HtmlButton客户端控制网页提交

ASP.NET
.Net中使用com组件后发生System.ArithmeticException异常的解决办法
SQL Server.net 和 OLE DB.net连接数据库的比较
后台更新DataTable行内容的方法
敏捷软件开发(原则,模式与实践)笔记1
确保文本框输入值为数值的代码
XML和数据库之间相互的映射
让你的.NET程序兼容不同版本的Dll文件。
.NET 的数据访问应用程序块(Data Access Application Block)
用控件仅一条指令实现界面换肤和多语言版本(YFSkins)
Microsoft User Interface Process Application Block 研究(3)
分享:处理Excel方法小结
基于ASP.NET实现全球化
.net 里面 protected private 的变量也可以访问(新发现)。
关于C#中{0}和{1}的问题初次在此发贴,问题对你易对我难,求救了
使用C#代码实现增加用户帐号
全世界都在关注-微软重大产品发布
教你做Rational Rose(UML Design)
OLE DB取得数据库的架构信息
VB 从零开始编外挂(三)
XPath序列之四

ASP.NET 中的 实现HtmlButton客户端控制网页提交


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 87 ::
收藏到网摘: n/a

    我们知道,在Asp.net中适当的使用Html控件有许多方便之处,Html控件既能在客户端进行脚本处理,又能在网页提交至服务器后在cs文件中控制,如果用单独的Web服务器控件则不能做到这一点,限制了我们开发的灵活性.因此我们会在好多地方会使用到HtmlButton控件.下面就谈谈该控件一个使用的小技巧:
如果要点击HtmlButton后使网页提交,我们会选择将该HtmlButton作为服务器控件运行.这样做每次点击HtmlButton都会使页面提交至服务器,但如果我们需要在点击按钮之后在客户端做一些处理,然后再选择是否使网页提交,按照一般的处理方法,似乎HtmlButton无能为力了,但是我们分析一下HtmlButton在网页运行后生成的Html,生成Html如下:

<input language="javascript" onclick="__doPostBack('clientbutton','')" name="clientbutton" id="clientbutton" type="button" style="Z-INDEX: 101; LEFT: 168px; POSITION: absolute; TOP: 80px" value="Button" />
我们看到生成的Html给按钮添加了一下onclick事件,从而使网页提交,那明白它的执行过程,我们就知道该怎么做了,如果我们在__doPostBack('clientbutton','')执行之前,给按钮加一客户端操作再决定是否提交这们不就满足我们的需求了,大家明白实现原理了,我就不讲那么罗琐了,下面我就说怎样实现了:

1 我们在后台cs文件中给HtmlButton加属性,其中clientbutton为HtmlButton为id,clientoper为客户端javascript function. clientbutton.Attributes.Add("onclick","if(!clientoper()){return;}");
该话句一般放在网页加载事件中.
2 客户端添加clientoper方法,执行您需要的操作,操作完成之后根据返回值决定是否需要提交,返回true网页提交,false则不提交.
<script language=javascript>
function clientoper()
{
//这里可以执行客户端操作,比如验证之类的
//这里判断是否提交
var result=window.confirm("您确认要提交吗?");
if(result)
{
return true;
}
else
{
return false;
}
}
</script>
方法也很简单,相信朋友们一看就明白了,说到这有朋友问了,可这只适用于HtmlButton,按钮,多死板,如果想用图片做按钮怎么办,方法当然有,也不需要修改什么,研究一下按钮的css样式就满足你的需要了!