C# 在Asp.Net中多次单击按钮时避免页面刷新事件

C# 在Asp.Net中多次单击按钮时避免页面刷新事件,c#,asp.net,C#,Asp.net,我有一个页面,我有一个按钮“添加更多”。每当我点击这个按钮时,我的“rowNum”就会增加1并执行该任务。现在,它在不点击页面刷新按钮的情况下工作得很好。但是,每当我点击页面刷新按钮时,上一个操作就会再次执行,该操作是由“添加更多”完成的。我已经看到了在oline平台上避免页面刷新的各种可能的解决方案,但解决方案有点像当他们检测到页面刷新时,他们会在提交表单时避免页面刷新,但在我的例子中,我不能这样做,因为我必须单击“添加更多”按钮一次又一次,即使用户单击中间的刷新按钮。几天来我一直在寻找一个可

我有一个页面,我有一个按钮“添加更多”。每当我点击这个按钮时,我的“rowNum”就会增加1并执行该任务。现在,它在不点击页面刷新按钮的情况下工作得很好。但是,每当我点击页面刷新按钮时,上一个操作就会再次执行,该操作是由“添加更多”完成的。我已经看到了在oline平台上避免页面刷新的各种可能的解决方案,但解决方案有点像当他们检测到页面刷新时,他们会在提交表单时避免页面刷新,但在我的例子中,我不能这样做,因为我必须单击“添加更多”按钮一次又一次,即使用户单击中间的刷新按钮。几天来我一直在寻找一个可行的解决办法,请帮帮我。我正在连接下面的代码:

    static int rowNum;
        string applicantUserid = "";
        EmployeeHistDS employeeHistDS = new EmployeeHistDS();
        EmployeeHistDS universityDS = new EmployeeHistDS();
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                loadCompanyInfo();
                if (!IsPostBack)
                {
                    rowNum = 1;
                    if (this.Context.User.Identity.Name != "")
                    {
                        hdnApplicantUserID.Value = this.Context.User.Identity.Name;
                        loadCombo();
                        divMessageFailed.Visible = false;
                        divMessageSuccess.Visible = false;
                        RecruitmentDS eduDS = UtilUI.GetApplicantEducationList(Convert.ToInt32(hdnApplicantUserID.Value));
                        if (eduDS != null && eduDS.Job_Applicant_EduInfo.Rows.Count > 0) loadUserCombo(eduDS);

                        JobDetailsDS jobsDS = new JobDetailsDS();
                        if (this.Context.User.Identity.Name != "") jobsDS = UtilUI.GetApplicantBasicInformation(this.Context.User.Identity.Name);
                        if (jobsDS != null && jobsDS.Job_Application.Rows.Count > 0 && !jobsDS.Job_Application[0].IsAPPLICANTNAMENull()) loginUserName.Text = "Welcome, <span class='bold' style='color:orange'>" + jobsDS.Job_Application[0].APPLICANTNAME + "</span>";
                        loginUserName.Visible = true;
                        login.Visible = false;
                    }
                    else if (Request.QueryString["id"] != null && UtilUI.Decrypt(Request.QueryString["id"].ToString()) != "")
                    {
                        hdnApplicantUserID.Value = UtilUI.Decrypt(Request.QueryString["id"].ToString());
                        loadCombo();
                        divMessageFailed.Visible = false;
                        divMessageSuccess.Visible = false;
                        logout.Visible = false;
                    }
                    else
                    {
                        loadCombo();
                        divMessageFailed.Visible = true;
                        lblError.ForeColor = Color.Red;
                        lblError.Text = "Please Fill Up Personal Information First to Add Education.";
                        divMessageSuccess.Visible = false;
                        logout.Visible = false;
                    }
                }
                else
                {
                    employeeHistDS = UtilUI.getDegreeList();
                    universityDS = UtilUI.getUniversityList();
                    _clearValidationMsg();
                    if (hdnApplicantUserID.Value == "")
                    {
                        divMessageFailed.Visible = true;
                        lblError.ForeColor = Color.Red;
                        lblError.Text = "Please Fill Up Personal Information First to Add Education.";
                        divMessageSuccess.Visible = false;
                    }
                    else
                    {
                        divMessageFailed.Visible = false;
                        divMessageSuccess.Visible = false;
                    }
                }
                MenuItemUrl();
            }
            catch { }

        }
protected void btnAdd_Click(object sender, EventArgs e)
        {
            if (rowNum != 8)
            {
                rowNum++;
                if (rowNum == 2) addNewRow2();
                else if (rowNum == 3) addNewRow3();
                else if (rowNum == 4) addNewRow4();
                else if (rowNum == 5) addNewRow5();
                else if (rowNum == 6) addNewRow6();
                else if (rowNum == 7) addNewRow7();
                else if (rowNum == 8) addNewRow8();
            }
            else
            {
                lblError.Text = "You Can Add Max 5 Post Graduation Information.";
                lblError.ForeColor = Color.Red;
                divMessageFailed.Visible = true;
                divMessageSuccess.Visible = false;
            }
        }
static int rowNum;
字符串applicationuserid=“”;
EmployeeHistDS EmployeeHistDS=新的EmployeeHistDS();
EmployeeHistDS universityDS=新员工HistDS();
受保护的无效页面加载(对象发送方、事件参数e)
{
尝试
{
loadCompanyInfo();
如果(!IsPostBack)
{
rowNum=1;
if(this.Context.User.Identity.Name!=“”)
{
hdnApplicantUserID.Value=this.Context.User.Identity.Name;
loadCombo();
divMessageFailed.Visible=false;
divMessageSuccess.Visible=false;
RecrumentDS eduDS=UtilUI.getApplicationEducationList(Convert.ToInt32(hdnApplicantUserID.Value));
如果(eduDS!=null&&eduDS.Job\u申请人\u EduInfo.Rows.Count>0)加载用户组合(eduDS);
JobDetailsDS jobsDS=新的JobDetailsDS();
if(this.Context.User.Identity.Name!=“”)jobsDS=UtilUI.getapplicationbasicInformation(this.Context.User.Identity.Name);
如果(jobsDS!=null&&jobsDS.Job_Application.Rows.Count>0&&!jobsDS.Job_应用程序[0]。isApplicationNameNull())loginUserName.Text=“欢迎,”+jobsDS.Job_应用程序[0]。applicationName+”;
loginUserName.Visible=true;
login.Visible=false;
}
else if(Request.QueryString[“id”]!=null&&UtilUI.Decrypt(Request.QueryString[“id”].ToString())!=“”)
{
hdnApplicantUserID.Value=UtilUI.Decrypt(Request.QueryString[“id”].ToString());
loadCombo();
divMessageFailed.Visible=false;
divMessageSuccess.Visible=false;
注销。可见=假;
}
其他的
{
loadCombo();
divMessageFailed.Visible=true;
lblError.ForeColor=颜色为红色;
lblError.Text=“请先填写个人信息以添加教育。”;
divMessageSuccess.Visible=false;
注销。可见=假;
}
}
其他的
{
employeeHistDS=UtilUI.getDegreeList();
universityDS=UtilUI.getUniversityList();
_clearValidationMsg();
如果(hdnApplicantUserID.Value==“”)
{
divMessageFailed.Visible=true;
lblError.ForeColor=颜色为红色;
lblError.Text=“请先填写个人信息以添加教育。”;
divMessageSuccess.Visible=false;
}
其他的
{
divMessageFailed.Visible=false;
divMessageSuccess.Visible=false;
}
}
MenuItemUrl();
}
捕获{}
}
受保护的无效btnAdd_单击(对象发送者,事件参数e)
{
如果(rowNum!=8)
{
rowNum++;
如果(rowNum==2)addNewRow2();
如果(rowNum==3)addNewRow3(),则为else;
如果(rowNum==4)addNewRow4(),则为else;
如果(rowNum==5)addNewRow5(),则为else;
如果(rowNum==6)addNewRow6(),则为else;
如果(rowNum==7)addNewRow7(),则为else;
如果(rowNum==8)addNewRow8(),则为else;
}
其他的
{
lblError.Text=“您最多可以添加5个毕业后信息。”;
lblError.ForeColor=颜色为红色;
divMessageFailed.Visible=true;
divMessageSuccess.Visible=false;
}
}
为了便于您更好地理解,我附上了一张图片:
谢谢。

这是你的窍门。。如果刷新不执行您的code@HanyHabib我已经知道这个解决方案,但这里的情况并非如此。我无法避免页面刷新,因为即使在单击页面刷新按钮之后,我也必须一次又一次地单击“添加更多”按钮,这就是为什么该解决方案对我不起作用的原因。您是否考虑过在单击按钮时使用JS禁用该按钮?是的,但我在这里有点困惑。如果我使用JavaScript禁用我的按钮,那么当用户点击页面刷新后我需要点击它时,我将如何重新启用它?