首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在将更多页面移动到另一页面时显示确认警报消息

在将更多页面移动到另一页面时显示确认警报消息
EN

Stack Overflow用户
提问于 2011-05-11 16:39:14
回答 1查看 845关注 0票数 0

我几乎没有web用户控件,因为我使用tinymce扩展编辑器..我在不同的btn点击上调用一个aspx文件中的所有控件。

我想,当我是编辑模式,我正在更改编辑器中的一些文本,而不保存它,如果我离开该页面,它必须询问并显示确认警告消息,你想保存这个文本吗。

怎么做。

在ascx文件上

诊断:

代码语言:javascript
复制
                    <asp:TextBox ID="txbDiag" TextMode="MultiLine" runat="server" Width="100%" Height="100px"></asp:TextBox>
                    <acr3s:tinymceextender runat="server" ID="TinyMceExtender4" TargetControlID="txbDiag" Theme="Full">
                    </acr3s:tinymceextender>                        
                </td>

我调用的扩展程序是

使用系统;使用System.Collections.Generic;使用System.Linq;使用System.Web;使用System.Web.UI;使用System.ComponentModel;使用System.Web.UI.WebControls;使用System.Globalization;

汇编: WebResource(NewCaseWizardBAL.TinyMceExtender.SupportScript,“文本/javascript”)

命名空间类型{TargetControlType( NewCaseWizardBAL (TextBox))公共类TinyMceExtender : ExtenderControl {

代码语言:javascript
复制
    internal const string SupportScript = "NewCaseWizardBAL.TinyMceSupport.js";

    private TinyMceTheme _theme = TinyMceTheme.Limited;

    private string GetTheme()
    {
        switch (Theme)
        {
            case TinyMceTheme.Limited:
                return "limited";
            case TinyMceTheme.Full:
                return "special";
            case TinyMceTheme.FullWithImage:
                return "specialWithImage";
            default:
                return "";
        }
    }
    [DefaultValue(TinyMceTheme.Limited)]
    public TinyMceTheme Theme
    {
        get { return _theme; }
        set { _theme = value; }
    }
    protected override IEnumerable<ScriptDescriptor> GetScriptDescriptors(Control targetControl)
    {
        return null;
    }

    protected override IEnumerable<ScriptReference> GetScriptReferences()
    {
        return null;
    }


    protected override void OnPreRender(System.EventArgs e)
    {
        base.OnPreRender(e);
        Control targetControl = FindControl(TargetControlID);            
        ScriptManager.RegisterClientScriptInclude(Page, typeof(TinyMceExtender), "include_tiny_mce", ResolveClientUrl("~/Scripts/tiny_mce/tiny_mce.js"));
        ScriptManager.RegisterClientScriptResource(Page, typeof(TinyMceExtender), SupportScript);
        ScriptManager.RegisterClientScriptBlock(this, typeof(TinyMceExtender), "init" + targetControl.ClientID, string.Format(CultureInfo.InvariantCulture, "initTinyMCE ('{0}', '{1}');", targetControl.ClientID, GetTheme()), true);

    }

}

public enum TinyMceTheme
{
    Limited,
    Full,
    FullWithImage
}

}

我无法编写任何onclient事件,因为我正在调用客户端单击时的掩蔽脚本

那么如何在任何jquery或java脚本的帮助下做到这一点呢?

我也在使用自动保存插件,但它没有显示任何警告消息

我是否需要更改tiny_mce.js中的某些内容

请帮助我显示确认警告框以询问“是否要保存您的更改”

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-11 16:42:05

您可以使用客户端window.confirm()调用或OnClientClick函数,如

代码语言:javascript
复制
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="javascript:return 
window.confirm('Are you sure about to submit the test?');" OnClick="Button1_Click" />

然后在代码隐藏中:

代码语言:javascript
复制
protected void Button1_Click(object sender, EventArgs e)
{
  Response.Redirect("NextPage.aspx");
}

编辑:

代码语言:javascript
复制
<script type="text/javascript">
  function finalFunction ()
  {
    return window.confirm('Are you sure about to submit the test?');
  }
</script>

然后调用包含这两个脚本的函数:

代码语言:javascript
复制
<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="javascript:finalFunction();" OnClick="Button1_Click" />
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5961467

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档