gpt4 book ai didi

javascript - 后面的asp.net代码中的条件确认提示

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

我四处寻找实现它的方法。这是我所拥有的伪代码表示:

bool hasData = ItemHasData(itemid);
Confirm = "false"; // hidden variable

if (hasData)
{
//Code to call confirm(message) returns "true" or "false"
if (Confirm == "true")
{
//Delete item
}
else if (Confirm == "false")
{
return;
}
}

调用确认的代码使用 asp:Literal 控件并将其设置为等于确认。我可以获得弹出窗口,但只能在函数退出后才能获得。它对之后的条件不做任何处理。

普遍的共识似乎是在该特定行调用 javascript 是不可能的(由于服务器端/客户端的差距,这是有道理的),但我该如何实现呢?我尝试使用 ASP.NET AJAX 工具包中的 ConfirmButtonExtender,但当对象设置为 runat="server"时,我无法与代码中的 confirmbuttonextender 对象交互。

编辑:

抱歉,我确实错过了那些花絮。谢谢伊卡洛斯。

控件本身就是GridView(伪版本实际上来自gvData_RowCommand函数)的rowcommand。第一个检查是查看 CommandName 是否为 DeleteItem,如果是则进入此检查。

gvData 的列是根据传递的标题列表(和数据集)设置的,因为它所针对的表是针对具有不同所需信息的多个项目。 gvData 的数据在那里,我只需要得到一个是/否(或者实际上它最终会是确定/取消)对话框来验证他们想要在有数据时删除该项目。

最佳答案

我最终在某些情况下使用的一种方法是让面板显示确认/取消按钮。这避免了处理 JavaScript 事件的需要并完全使用 ASP.NET。

<asp:Panel ID="pDeleteConfirm" runat="server"
CssClass="AlertDialog"
Visible="False">
<p>Do you wish to delete the selected record?<br />
<asp:Button ID="btDeleteYes" runat="server" OnClick="btDelete_Click" Text="Delete" />
<asp:Button ID="btDeleteNo" runat="server" OnClick="btDelete_Click" Text="Cancel" />
</p>
</asp:Panel>

<asp:GridView ID="gvData" runat="server"
AutoGenerateColumns="False"
CssClass="GridView"
DataKeyNames="ID"
DataSourceID="sqlData"
EmptyDataText="There is no data entered in the system."
OnRowDeleting="gvData_RowDeleting">
......
</asp:GridView>

我使用 OnRowDeleting 事件来显示面板

protected void gvData_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
// Show confirmation dialog
pDeleteConfirm.Visible = true;

// Select the row to delete
gvData.SelectedIndex = e.RowIndex;

// Cancel the delete so the user can use the confirm box
e.Cancel = true;
}

处理按钮点击事件

protected void btDelete_Click(object sender, EventArgs e)
{
Button bt = (Button)sender;
switch (bt.ID)
{
case "btDeleteYes": // they confirmed a delete
sqlData.Delete();
break;

case "btDeleteNo": // they clicked cancel
// Do nothing
break;

default:
throw new Exception("Unknow button click in btDelete_Click");
}
// clear selection and hide the confirm box
gvData.SelectedIndex = -1;
pDeleteConfirm.Visible = false;
}

这不是 JavaScript,但您可以添加一些 UpdatePanel 来对其进行 AJAX 处理。

只是一种通过 ASP.NET 而不是 JavaScript 处理来完成的方法。

关于javascript - 后面的asp.net代码中的条件确认提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7676863/

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