您的位置:首页 > 编程语言 > ASP

<asp:Button>先执行前端js函数,再执行后台的事件处理

2017-08-03 08:32 585 查看
有两种使用方式:

1)<asp:Button>是一个单纯的Button,没有在<asp:Adapter>中,此时,要想实现button先执行js函数,再执行后台事件处理,此时的解决办法就是,直接上代码:

前端代码:

  <%--后台触发执行的js函数--%>

    <script type="text/javascript">  

        function JsYuezhifuFunction() {

            if (confirm("确定支付吗?")) {

                window.location = "Service_My_center.aspx";

            return true;  

        }  

        return false;  

    }  

</script>  

 

<asp:Button ID="yuezhifu" CssClass="yuezhifu" runat="server" Text="余额支付" OnClick="yuezhifu_Click"/>

 

后台代码:

   if (!IsPostBack)

            {

                //在进行支付的时候,先要弹出框提示

                yuezhifu.Attributes.Add("onclick",
"return JsYuezhifuFunction()");

注意的是,这段代码要写在的是page_onload()方法中。

 

  2)<asp:Button>是存在于<asp:Adapter>中

前端中的代码是不变的,要变得就是后台中原来写在page_onload()方法中的代码,要写在的是<asp:Adaper>的onDataBound()的方法中

 protected void daifukuanRepeater_ItemDataBound(object sender,
RepeaterItemEventArgs e)

        {

            if (e.Item.ItemType ==
ListItemType.Item || e.Item.ItemType ==
ListItemType.AlternatingItem)

            {

                Button quxiaodingdan = (Button)e.Item.FindControl("QuxiaoDingdan");

                quxiaodingdan.Attributes.Add("OnClick",
"return  jsqudanFunction()");

            }

        }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息