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

ASP.NET
基于C#的接口基础教程之五
基于C#的接口基础教程之六
ASP.NET中数据库的操作初步----增加、删除、修改
从Internet上抓取指定URL的源码的方案(C#)
对C#中正则表达式的一些解读和总结
简述c#中对字符串进行分割的几种方法
ASP.NET中的事务处理和异常处理
用ASP.NET/C#连接Access和SQL Server数据库
ASP.NET 2.0中层次数据的处理
ASP.NET 2.0服务器控件之客户端功能
asp.net2.0 URL重写以及urlMappings问题(1)
asp.net2.0 URL重写以及urlMappings问题(2)
再议ASP.NET DataGrid控件中的“添加新行”功能
建立个人知识引擎的重要性
解析.Net框架下的XML编程技术
ASP.NET--制作功能完善的安装程序
Asp.net直接保存文件到客户端
.Net中消除Dll中的dependency
ASP.NET页面事件:顺序与回传详解
在ASP.NET+ORACLE添加数据记录并让ID自动增量

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 185 ::
收藏到网摘: 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样式就满足你的需要了!