ASP.NET的OnClientClick与OnClick事件,定位滚动条位置

一、OnClick

OnClick事件是服务器端事件处理方法,在服务器端运行.点击按钮后,先执行postback,再运行方法

二、OnClientClick

OnClientClick中常用来做一些客户端的检测.

三、配合使用

当我们需要提交服务器前做一些校验时,需要OnClick 配合OnClientClick使用

    <script type="text/javascript">
    	function createSFOrder(e) {
		    var abc = $(e).attr("abc");
			console.info($(e).attr("abc").split(','));
			return false;
			
		}
        function setPosition() {
            //点击查询时记录div-main的滚动条位置
            let postion = $(".div-main").scrollTop();
            //临时存储
            sessionStorage.setItem('wx_cj_chukmx_manage_pos', postion);
            return true;
        }
        $(function () {
            //加载时自动滚动到上次滚动位置 								    
            let postion = sessionStorage.getItem('wx_cj_chukmx_manage_pos');
            if (postion) {
                $(".div-main").animate({ scrollTop: postion }, 100);
                sessionStorage.removeItem('wx_cj_chukmx_manage_pos');
            }
        })
    </script>

//第一种情况asp:Button,注意 OnClientClick一定要用return function()的形式,
//如果使用OnClientClick="setPosition()" 则不生效
<asp:Button ID="Button2" runat="server" OnClick="Button2_Click"  Text="查询" 
 OnClientClick="return setPosition()" />
 
//第二种情况,在GridView 如果需要给检测函数动态传递参数,可以使用下面这种方式
//给模板中的按钮添加动态自定义属性,并给OnClientClick对应函数传递当前dom对象
<asp:GridView ID="GVList" runat="server" AutoGenerateColumns="False" CellPadding="0" class="layui-table" OnRowCommand="GVList_RowCommand" OnRowCreated="GVList_RowCreated" Width="100%">
     <FooterStyle CssClass="GridViewFooter" />
     <EmptyDataRowStyle CssClass="GridViewEmpty" />
     <Columns>
         <asp:TemplateField HeaderText="操作">
             <ItemTemplate>
                 <asp:Button ID="生成顺丰单号" runat="server" 
                     abc='<%# Eval("diaocdwcoding")+","+Eval("diaordwcoding")+","+Eval("SFORDER") + "," +  Eval("DIAOBDBH")%>' 
                     OnClientClick='return createSFOrder(this)' 
                     Text="生成顺丰单"  />
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
    <RowStyle CssClass="GridViewItem" />
    <EmptyDataTemplate>
        没有数据!
    </EmptyDataTemplate>
    <PagerStyle CssClass="GridViewPage" />
    <HeaderStyle CssClass="GridViewHead" />
    <AlternatingRowStyle CssClass="GridViewAlternatingItem" />
</asp:GridView>



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

酷啦啦诶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值