Jquery 停止用户使用Telerik radwindowmanager直接单击关闭(X)web应用程序的消息
使用Telerik RadWindowManager的web应用程序。我想通过抛出一条消息来阻止用户直接点击close按钮,他可以选择Yes、No和Cancel 如果他点击Yes,意味着他可以进入上一页并将一些信息保存到数据库中,如果点击No,他可以进入上一页而不保存,并取消以保持在同一页中。请分享你的想法 我尝试在这里添加onclientbeforecose=“onclientbeforecose”,并定义onclientbeforecose方法。但它不起作用Jquery 停止用户使用Telerik radwindowmanager直接单击关闭(X)web应用程序的消息,jquery,.net,telerik,messagebox,radwindow,Jquery,.net,Telerik,Messagebox,Radwindow,使用Telerik RadWindowManager的web应用程序。我想通过抛出一条消息来阻止用户直接点击close按钮,他可以选择Yes、No和Cancel 如果他点击Yes,意味着他可以进入上一页并将一些信息保存到数据库中,如果点击No,他可以进入上一页而不保存,并取消以保持在同一页中。请分享你的想法 我尝试在这里添加onclientbeforecose=“onclientbeforecose”,并定义onclientbeforecose方法。但它不起作用 <telerik:RadW
<telerik:RadWindowManager ID="Singleton" runat="server" Behaviors="Close, Move, Resize, Maximize">
<Windows>
<telerik:RadWindow ID="DialogMsg"
ReloadOnShow="true" OnClientClose="OnClientMsgclose"
BackColor="Gray" Modal="true" runat="server"
NavigateUrl="../messages.aspx">
</telerik:RadWindow>
</Windows>
<Windows>
<telerik:RadWindow ID="DialogAlertMsg" ShowContentDuringLoad="false" OnClientClose="OnCloseOfAlertDialog" EnableViewState="false" ReloadOnShow="true"
BackColor="Gray" Modal="true" runat="server" Height="250" Width="350">
</telerik:RadWindow>
</Windows>
</telerik:RadWindowManager>
尝试以下代码以实现您的场景 ASPX:
这将向您展示如何单独使用JavaScript确认关闭: 您可以向回调函数添加其他代码以满足您的需要
如果你想要三个按钮——上面关于定制RadWIndow内容模板的想法是可行的,但是你可以用JavaScript做更多的事情,不是每个按钮都需要回发。谢谢Saritha。你解释的方式很好。但我想我漏掉了一点——我需要停止用户单击X(最小化/还原旁边最右角的关闭按钮)。如果不需要关闭按钮,那么在哪个事件上您正试图实现这些目标
<telerik:RadWindowManager ID="winmgr" runat="server">
<Windows>
<telerik:RadWindow ID="win1" runat="server" VisibleOnPageLoad="true" OnClientClose="OnClientClose">
</telerik:RadWindow>
</Windows>
</telerik:RadWindowManager>
<telerik:RadWindow ID="confirmWindow" runat="server" VisibleTitlebar="true" VisibleStatusbar="false"
Modal="true" Behaviors="None" Height="200px" Width="300px" Title="Confirm Delete">
<ContentTemplate>
<div style="padding-left: 30px; padding-top: 20px; width: 200px; float: left;">
<asp:Label ID="lblConfirm" Font-Size="14px" Text="Are you sure ?" runat="server"></asp:Label>
<br />
<br />
<telerik:RadButton ID="RadButtonYes" runat="server" Text="Yes" AutoPostBack="false"
OnClientClicked="confirmResult">
</telerik:RadButton>
<telerik:RadButton ID="RadButtonNo" runat="server" Text="No" AutoPostBack="false"
OnClientClicked="confirmResult">
</telerik:RadButton>
<telerik:RadButton ID="RadButtonCancel" runat="server" Text="Cancel" AutoPostBack="false"
OnClientClicked="confirmResult">
</telerik:RadButton>
</div>
</ContentTemplate>
</telerik:RadWindow>
<asp:HiddenField ID="hdn" runat="server" />
function OnClientClose(sender, args) {
$find("<%=confirmWindow.ClientID %>").show();
$find("<%=RadButtonYes.ClientID %>").focus();
}
function confirmResult(sender, args) {
var oWnd = $find("<%=confirmWindow.ClientID %>");
oWnd.close();
if (sender.get_text() == "Yes" || sender.get_text() == "No") {
document.getElementById("<%=hdn.ClientID %>").value = sender.get_text();
$find("<%=RadButton1.ClientID %>").click();
}
}
protected void RadButton1_Click(object sender, EventArgs e)
{
string value = hdn.Value;
if(value=="Yes")
{
//your code
}
else if(value=="No")
{
//your code
}
}