有两种使用方式:
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()");
}
}