Js未加载完毕导致页面在IE中弹出错误

在一个拥有富文本编辑框(tinymce)的form表单中,当提交数据后,希望弹出一个消息对话框后跳转到另外一个页面,我的做法:当提交完数据后向前台页面输出一段js代码,如:使用return string.Format("<script language=\"javascript\">

alert(\"{0}\");window.location.href=\"{1}\";</script>", msg, redirectUrl);

向页面弹出消息对话框的时候,在IE中会导致消息对话框弹出后,页面出现js错误(在FireFox,Chrome就不会有这样的错误),经多次测试发现原来是由于弹出消息对话框后跳转到其它页面时,导致的tinymce的js未加载完毕出现的js错误,所以要解决这个问题,就需要在页面元素加载完后再弹消息对话框。

那么如何实现页面元素加载完后再弹出消息对话框呢?

方法1:

return string.Format ("<scriptlanguage=\"javascript\">if(document.all){{

document.onreadystatechange=function(){{alert(\"{0}\");window.location.href=\"{1}\";}};}

else{{window.οnlοad=function(){{alert(\"{0}\");window.location.hre=\"{1}\";}}}}</script>", msg, redirectUrl);

方法2:

如果页面上使用了jQuery的话,可以使用下面的做法:

return string.Format("<scriptlanguage=\"javascript\">$(window).load(function()

{{alert(\"{0}\");window.location.href=\"{1}\";}});</script>", msg, redirectUrl);

 

在这里你还有可能遇到string.Format()格式化的问题,查看相关问题

转载于:https://www.cnblogs.com/shulin/archive/2010/08/27/1810304.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值