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

ASP.NET
LCS问题算法之VB.net版
一个自定义LABEL组件的C#源代码
在C#中使用XML指南之读取XML
Asp.Net页面输出到EXCE
DataGrid脚眉显示合计
类似BOOLEAN列的DATAGRIDTEXTBOX的改进
在.net中调用存储过程的另一种方法
.net中窗体的调整
按钮列的应用
带颜色的listbox控件
可拖动的无标题栏窗体
正弦函数的绘制的一种方法
使用反射实现根据名称动态创建窗体的几种方法
运行时拉伸和移动控件的类
字符串根据多个字符进行分割的一种方法
使用递归从数据库读取数据来动态建立菜单
设置tabcontrol控件选项卡的字体为竖着的
容器中控件的拖动
单元测试辅助类
VB.net 调用带参数存储过程

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


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