zoukankan
html css js c++ java
也谈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设置,一劳永逸。
欢迎交流
本博客所有随笔,若未明确标示为转载或未带有原文链接,皆为原创。
本博客所有随笔版权归博客园和kai.ma所有,欢迎转载,转载请保留:
出处:http://kaima.cnblogs.com
作者:kai.ma
查看全文
相关阅读:
Java基础之IO框架
Java基础之RTTI 运行时类型识别
Java进阶之多线程
Java进阶之内存管理与垃圾回收
Java进阶之网络编程
springcloud的Hystrix turbine断路器聚合监控实现(基于springboot2.02版本)
springmvc,controller层在接收浏览器url传来的参数带中文乱码问题。
Cannot read lifecycle mapping metadata for artifact org.apache.maven.plugins:mav问题
springboot2.x自定义拦截把static静态文件给拦截的坑
Eclipse启动发生的错误:An internal error occurred during: "Initializing Java Tooling".
原文地址:https://www.cnblogs.com/kaima/p/604758.html
最新文章
排序-快速排序
Qt-opensource 各版本下载
简单排序(冒泡、插入)
Opencv学习(一)之在Ubuntu上编译Opencv
C++之Lambda表达式
一步一步深入spring(5)--使用基于注解的spring实现 AOP
一步一步深入spring(3)--spring的依赖注入方式
自己动手写spring容器(2)
自己动手写spring容器(1)
使用dom4j解析xml文件
热门文章
一步一步深入spring(2)-三种方式来实例化bean
一步一步深入spring(1)--搭建和测试spring的开发环境
搭建基于SSI(struts2,spring,ibatis)的javaEE开发环境
Java进行http请求工具类代码(支持https)
Linux和windows下检查jsp后门文件的方法
Linux下Tomcat重启脚本
Tomcat报错java.lang.ClassNotFoundException: 2localhost.org.apache.juli.FileHandler
zookeeper的安装与部署-集群
程序员的基本功之数组与内存控制
Java基础之集合框架
Copyright © 2011-2022 走看看