打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
也谈UpdatePanel与UrlRewrite一起work时出现Form Action属...

也谈UpdatePanel与UrlRewrite一起work时出现Form Action属性的问题

首先感谢老赵写了一篇文章,http://www.cnblogs.com/JeffreyZhao/archive/2006/12/27/604373.aspx#post

其实出现这个问题,根本不是MS Ajax的失误,完全是我们没有用好URLRewrite这个东西的原因。

老赵的解决方法是重写了一个Form类,把原来的Form的Action给清空了。

能否正常工作我不知道,但是我认为“清空”,“利用默认属性”这样一类的做法是很危险的。~~~

重写Form类的,引用也有点麻烦,我觉的重写一个Page,比较方便。我在www.365rss.cn中的做法如下:

using System;
using System.IO;
using System.Web;
using System.Web.UI;
namespace okpower.Utility
{
    
/// <summary>
    
/// URLRewrite 页面基类
    
/// 作者:Kai.Ma http://kaima.cnblogs.com
    
/// </summary>

    public class URLRewritePage : Page
    
{
        
public URLRewritePage()
        
{
        }


        
protected override void Render(HtmlTextWriter writer)
        
{            
            writer 
= new FormFixerHtmlTextWriter(writer.InnerWriter);
            
base.Render(writer);
        }

    }


    
internal class FormFixerHtmlTextWriter : System.Web.UI.HtmlTextWriter
    
{
        
private string _url;
        
internal FormFixerHtmlTextWriter(TextWriter writer)
            : 
base(writer)
        
{
            _url 
= HttpContext.Current.Request.RawUrl;
        }


        
public override void WriteAttribute(string name, string value, bool encode)
        
{
            
// 如果当前输出的属性为form标记的action属性,则将其值替换为重写后的虚假URL
            if (_url != null && string.Compare(name, "action"true== 0)
            
{
                value 
= _url;
            }


            
base.WriteAttribute(name, value, encode);
        }

    }


}
以后继承这个URLRewritePage就可以了,甚至可以进web.config设置,一劳永逸。
欢迎交流
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
servlet中传参方法总结
struts2文件上传
urlRewriteFilter来实现url的美化
Html <form>表单标签元素 </form>
五大网页重定向方法
表单
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服