Delivery Dbrief 每个选项卡都有不同的功能。在这些选项卡上方是一-6ren">
gpt4 book ai didi

c# - 如何在打开某些选项卡时停止运行保存按钮功能

转载 作者:行者123 更新时间:2023-11-30 12:25:15 25 4
gpt4 key购买 nike

我有一个显示几个不同选项卡的页面。

<li id="liHeader"><a href="#tabHeader" title="Header">General</a></li>
<li id="liFooter"><a href="#tabNotesComments" id="tabNotes" title="Notes/History of Job">Notes (<%= NoOfNotes %>)</a></li>
<li runat="server" id="liDelivery" ><a href="#<%= tabDeliveryDbrief.ClientID %>" title="Delivery Dbrief">Delivery Dbrief</a></li>

每个选项卡都有不同的功能。在这些选项卡上方是一些新建、保存、删除等按钮。在保存功能中,有代码在每次更新内容时创建一个注释。例如“用户 A 在中午 12:48 更新了作业”。此保存按钮适用于在打开的任何选项卡中所做的任何更改。但是当“交付报告”选项卡打开时,我不希望每次更新内容时都创建此注释。在此选项卡中,信息会更新很多,因此会有太多注释。所以每次点击保存按钮时都会运行这段代码:

protected void btnSave_Click(object sender, EventArgs e)
{
string Note = Job.Compare(oldJob, new Job(int.Parse(Request.QueryString["JobID"])), Mod);
JobNote modNote = new JobNote
{
JobID = job.ID,
Company_ID = CurCompID,
Date = DateTime.Now,
Time = DateTime.Now,
Note = Note,
CreatedBy = CurrentUser.UserID,
CreatedByName = CurrentUser.Username,
NoteType = 1
};
modNote.Create();
}

有没有办法在交付报告选项卡打开时停止运行此代码?仍然需要为其他选项卡创建注释。

最佳答案

你不能阻止点击,但你可以用 2 种方法做到这一点:

1 - 将您的按钮设为 html 按钮并通过 ajax(Web 服务)调用服务器端的点击

2 - 您可以为您的 li 设置一个属性(如“active=false”),然后单击选项卡将其设置为“true”。现在在服务器端检查这个属性(liDelivery.Attributes["active"])是否为真,这意味着选项卡已打开并且不做任何事情

protected void btnSave_Click(object sender, EventArgs e)
{

if(liDelivery.Attributes["active"].ToString() == "false") return;
string Note = Job.Compare(oldJob, new Job(int.Parse(Request.QueryString["JobID"])), Mod);
JobNote modNote = new JobNote
{
JobID = job.ID,
Company_ID = CurCompID,
Date = DateTime.Now,
Time = DateTime.Now,
Note = Note,
CreatedBy = CurrentUser.UserID,
CreatedByName = CurrentUser.Username,
NoteType = 1
};
modNote.Create();
}

关于c# - 如何在打开某些选项卡时停止运行保存按钮功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31808610/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com