Ajax中的UpdatePanel与Freetextbox兼容问题的初步解决方法

 默认情况下不兼容是因为UpdatePanel提交后FreeTextBox没有再次初始化造成的。
解决方法是在引用了FreeTextBox控件的页面代码中增加以下代码,即可实现手工初始化:

protected void Page_Load(object sender, EventArgs e)
{
        if (!Page.IsPostBack)
        {
            Page.ClientScript.RegisterClientScriptInclude("FTB-<a href='http://www.freetextbox.com' target=_blank>FreeTextBox</a>", VirtualPathUtility.MakeRelative(Request.Path, "~/scripts/FTB-<a href='http://www.freetextbox.com' target=_blank>FreeTextBox</a>.js"));
            Page.ClientScript.RegisterClientScriptInclude("FTB-Utility", VirtualPathUtility.MakeRelative(Request.Path, "~/scripts/FTB-Utility.js"));
            Page.ClientScript.RegisterClientScriptInclude("FTB-Toolbars", VirtualPathUtility.MakeRelative(Request.Path, "~/scripts/FTB-ToolbarItems.js"));
            Page.ClientScript.RegisterClientScriptInclude("FTB-ImageGallery", VirtualPathUtility.MakeRelative(Request.Path, "~/scripts/FTB-ImageGallery.js"));
            Page.ClientScript.RegisterClientScriptInclude("FTB-Pro", VirtualPathUtility.MakeRelative(Request.Path, "~/scripts/FTB-Pro.js"));
        }
}

public new void RegisterOnSubmitStatement(string key, string script)
{
    ScriptManager.RegisterOnSubmitStatement(this, typeof(Page), key, script);
}

[Obsolete]
public override void RegisterStartupScript(string key, string script)
{
    string newScript = script.Replace("FTB_AddEvent(window,'load',function () {", "").Replace("});", "");
    ScriptManager.RegisterStartupScript(this, typeof(Page), key, newScript, false);
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值