Asp.net中实现HtmlButton客户端控制网页提交实现

引用:http://www.asp315.com/news/9/200511242350907608.htm

None.gif 我们知道,在Asp.net中适当的使用Html控件有许多方便之处,Html控件既能在客户端进行脚本处理,又能在网页提交至服务器后在cs文件中控制,如果用单独的Web服务器控件则不能做到这一点,限制了我们开发的灵活性.因此我们会在好多地方会使用到HtmlButton控件.下面就谈谈该控件一个使用的小技巧:
None.gif如果要点击HtmlButton后使网页提交,我们会选择将该HtmlButton作为服务器控件运行.这样做每次点击HtmlButton都会使页面提交至服务器,但如果我们需要在点击按钮之后在客户端做一些处理,然后再选择是否使网页提交,按照一般的处理方法,似乎HtmlButton无能为力了,但是我们分析一下HtmlButton在网页运行后生成的Html,生成Html如下: 
None.gif
None.gif
< input  language ="javascript"  onclick ="__doPostBack('clientbutton','')"  name ="clientbutton"  id ="clientbutton"  type ="button"  style ="Z-INDEX: 101; LEFT: 168px; POSITION: absolute; TOP: 80px"  value ="Button"   />
None.gif我们看到生成的Html给按钮添加了一下onclick事件,从而使网页提交,那明白它的执行过程,我们就知道该怎么做了,如果我们在__doPostBack('clientbutton','')执行之前,给按钮加一客户端操作再决定是否提交这们不就满足我们的需求了,大家明白实现原理了,我就不讲那么罗琐了,下面我就说怎样实现了:
None.gif
None.gif1 我们在后台cs文件中给HtmlButton加属性,其中clientbutton为HtmlButton为id,clientoper为客户端javascript function. clientbutton.Attributes.Add("onclick","if(!clientoper()){return;}");
None.gif该话句一般放在网页加载事件中.
None.gif2 客户端添加clientoper方法,执行您需要的操作,操作完成之后根据返回值决定是否需要提交,返回true网页提交,false则不提交.
ExpandedBlockStart.gifContractedBlock.gif
< script  language =javascript > dot.gif
InBlock.gif
function clientoper()
ExpandedSubBlockStart.gifContractedSubBlock.gif
dot.gif{
InBlock.gif
//这里可以执行客户端操作,比如验证之类的
InBlock.gif//
这里判断是否提交
InBlock.gif
var result=window.confirm("您确认要提交吗?");
InBlock.gif
if(result)
ExpandedSubBlockStart.gifContractedSubBlock.gif
dot.gif
InBlock.gif
return true
ExpandedSubBlockEnd.gif}

InBlock.gif
else
ExpandedSubBlockStart.gifContractedSubBlock.gif
dot.gif{
InBlock.gif
return false;
ExpandedSubBlockEnd.gif}

ExpandedBlockEnd.gif}

None.gif
</ script >
None.gif方法也很简单,相信朋友们一看就明白了,说到这有朋友问了,可这只适用于HtmlButton,按钮,多死板,如果想用图片做按钮怎么办,方法当然有,也不需要修改什么,研究一下按钮的css样式就满足你的需要了!
None.gif
None.gif好了,如果有不明白的地方,我们再一起探讨,也祝大家的程序生活多姿多彩!
None.gif

转载于:https://www.cnblogs.com/mjgforever/archive/2006/04/18/377888.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值