如何避免 Page_Load() 按钮点击? [英] How to avoid Page_Load() on button click?

查看:27
本文介绍了如何避免 Page_Load() 按钮点击?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有两个按钮,预览和保存.在预览按钮的帮助下,用户可以根据格式查看数据,然后可以保存.

但是当点击预览时,附加到ajaxcontrol(日历)的一个文本框变空,用户必须在保存之前填写日期.如何处理?在预览点击我得到详细信息以在布局中显示数据.

<asp:TextBox ID="txtDate" ReadOnly="true" runat="server"></asp:TextBox><div style="float: right;"><asp:ImageButton ID="imgcalender1" runat="server" ImageUrl="~/images/calendar.png"ImageAlign="底部"/><asp:CalendarExtender ID="ajCal" TargetControlID="txtpublishDate" PopupButtonID="imgcalender1"runat="服务器"></asp:CalendarExtender><asp:RequiredFieldValidator ID="RequiredFieldValidator2" ValidationGroup="group1" runat="server" ControlToValidate="txtDate"ForeColor="Red" Font-Bold="true" ErrorMessage="*"></asp:RequiredFieldValidator>

<asp:Button ID="btnPreview" runat="server" Text="Preview" OnClick="btnPreview_Click"/><asp:Button ID="btnsubmit" runat="server" ValidationGroup="group1" Text="Save" OnClick="btnsubmit_Click"/>

解决方案

据我所知,预览按钮会导致回发,而您不希望出现这种情况,请在您的预览按钮上试试这个:

<asp:button runat="server".... OnClientClick="return false;"/>

同样的,这也有效:

YourButton.Attributes.Add("onclick", return false");

似乎用户问题的答案是预览按钮的 HTML 标记的简单更改

CausesValidation="False"

I have two buttons, preview and Save. With help of preview button user can view the data based on the format and then can save.

But when preview is clicked, one textbox attached to ajaxcontrol (Calender) becomes empty and user have to fill the date before saving. How to handle this? On preview click i get the details to show the data in layout.

<asp:TextBox ID="txtDate" ReadOnly="true" runat="server"></asp:TextBox>
                    <div style="float: right;">
                        <asp:ImageButton ID="imgcalender1" runat="server" ImageUrl="~/images/calendar.png"
                            ImageAlign="Bottom" />
                        <asp:CalendarExtender ID="ajCal" TargetControlID="txtpublishDate" PopupButtonID="imgcalender1"
                            runat="server">
                        </asp:CalendarExtender>
                        <asp:RequiredFieldValidator ID="RequiredFieldValidator2"  ValidationGroup="group1" runat="server" ControlToValidate="txtDate"
                            ForeColor="Red" Font-Bold="true" ErrorMessage="*"></asp:RequiredFieldValidator>
                    </div>

<asp:Button ID="btnPreview" runat="server" Text="Preview" OnClick="btnPreview_Click" />
                    <asp:Button ID="btnsubmit" runat="server" ValidationGroup="group1" Text="Save" OnClick="btnsubmit_Click" />

解决方案

From what I am understanding the preview button is causing a postback and you do not want that, try this on your preview button:

<asp:button runat="server".... OnClientClick="return false;" />

similarly this also works:

YourButton.Attributes.Add("onclick", return false");

Edit:

it seems the answer to the user's question was simple change in the HTML mark up of the preview button

CausesValidation="False"

这篇关于如何避免 Page_Load() 按钮点击?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆