CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
【经验总结】不能实施并行处理的情况 浅谈并行编程中的任务分解模式
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

有关url重写

楼主gsky()2006-01-10 16:48:20 在 .NET技术 / ASP.NET 提问

最近看了一些相关教程,现在我明白如何   打入例如这样的url:   localhost/yousite/d1.aspx  
  即转入   localhost/yousite/xx.aspx?ID=1     这个我看教程实现了    
   
  可是我刚刚接触这个   不明白的是    
   
  象有些网站那样   鼠标停留在超链接上的时候   浏览器下面显示的就是重写后的url   这个怎么实现呢?   还有就是   点击这个超链接   转入该页面时候   浏览器地址栏也应该是重写后的url   这个怎么实现呢?  
   
  我现在鼠标停留在   比如localhost/yousite/xx.aspx?ID=1   这个超链接上时候   我想再浏览器下面就显示的是   重写后的url   :localhost/yousite/d1.aspx   ,而点击它进入该页面后   浏览器地址栏里也应该是localhost/yousite/d1.aspx   这个怎么实现的呢?  
   
  十分感谢热心朋友的解答  
   
   
  问题点数:30、回复次数:19Top

1 楼gsky()回复于 2006-01-11 08:15:13 得分 0

没有人帮忙吗。。Top

2 楼gsky()回复于 2006-01-11 08:54:30 得分 0

upTop

3 楼bgu(彼岸)回复于 2006-01-11 09:16:43 得分 10

在梆定数据时,把链接用梆定方法做就可以了。  
  如:  
  <a   href="localhost/yousite/xx.aspx?ID=<%#ID%>">test</a>  
  重写一个梆定链接:  
  <a   href="localhost/yousite/d<%#ID%>.aspx">test</a>Top

4 楼gsky()回复于 2006-01-11 12:45:34 得分 0

先谢了   都是这种做法吗?Top

5 楼time_is_life(今夜太冷:http://timeislife.blog.sohu.com)回复于 2006-01-11 12:55:07 得分 2

http://time-is-life.cnblogs.com/articles/292861.htmlTop

6 楼gsky()回复于 2006-01-11 16:37:49 得分 0

楼上发的是什么东西?   
  是不是我说的那种情况都是 下面这样作的??  
   
  在梆定数据时,把链接用梆定方法做就可以了。  
  如:  
  <a   href="localhost/yousite/xx.aspx?ID=<%#ID%>">test</a>  
  重写一个梆定链接:  
  <a   href="localhost/yousite/d<%#ID%>.aspx">test</a>  
  Top

7 楼gsky()回复于 2006-01-12 08:01:30 得分 0

看看还有没有其他说法Top

8 楼hdt(倦怠)回复于 2006-01-12 08:09:16 得分 0

urlrewriter  
  Top

9 楼gsky()回复于 2006-01-12 09:11:04 得分 0

我就是看了微软的教程   urlrewriter   的Top

10 楼gsky()回复于 2006-01-13 08:43:47 得分 0

再期待一下Top

11 楼gsky()回复于 2006-01-13 16:33:08 得分 0

没人了解更多了吗..Top

12 楼hdt(倦怠)回复于 2006-01-13 16:44:48 得分 5

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/urlrewriting.aspTop

13 楼Cnapollo(旁痞)回复于 2006-01-14 12:04:54 得分 5

好象用带Link的控件难实现  
  我这位方法是用一个Button来代替,可以实现,你看看,大家多提意见  
  页面:  
  <style>  
  .LinkBtn   {   COLOR:   #0000ff;   BACKGROUND-COLOR:   transparent;   TEXT-DECORATION:   underline    
  ;Border-Style:None   ;CURSOR:   hand  
  }  
  </style>  
  <script   language="javascript"   for="Button1"   event="onmouseover">  
  window.status="localhost/yousite/d1.aspx";  
  </script>  
  <script   language="javascript"   for="Button1"   event="onmouseout">  
  window.status="None";  
  </script>  
   
  <asp:Button   CssClass="LinkBtn"   id="Button1"   runat="server"   Text="Button"   ></asp:Button>  
  后台:  
  private   void   Button1_Click(object   sender,   System.EventArgs   e)  
  {  
  Response.Redirect("Utils1.aspx");  
  }  
  Top

14 楼Cnapollo(旁痞)回复于 2006-01-14 12:06:25 得分 0

或者将前端script注释掉。在后台加载,这样你自定义URL字符串方便点:  
  private   void   Page_Load(object   sender,   System.EventArgs   e)  
  {  
  //   在此处放置用户代码以初始化页面  
  string Url="localhost/yousite/d1.aspx";  
  string strScript ="<script   language='javascript'   for='Button1'   event='onmouseover'>";  
  strScript +="window.status='"+Url+"';</script>";  
  strScript +="<script   language='javascript'   for='Button1'   event='onmouseout'>";  
  strScript +="window.status='None';</script>";  
  Page.RegisterStartupScript("WriteUrl",strScript);  
  }Top

15 楼sp1234(asp.net不是一个语言,是一个操作系统)回复于 2006-01-14 12:19:15 得分 1

正如   bgu(横渡)   所说,你在生成页面的时候就应该生成需要伪装成的url,然后这个url在提交到服务器的时候才被你reWrite。Top

16 楼dolfen(网海之豚(每天进步一点点))回复于 2006-01-14 20:49:08 得分 5

有个办法,重写Page的Render()  
   
  using   System.IO;  
  using   System.Text.RegularExpressions;  
   
  protected   override   void   Render(HtmlTextWriter   writer)  
  {                          
  TextWriter   tempWriter   =   new   StringWriter();  
  base.Render(new   HtmlTextWriter(tempWriter));                          
  string   str=tempWriter.ToString();  
   
  reg=   new   Regex(@"href=([\'|\"])?[^>]*xx.aspx?ID=(\d)([\'|\"])?",RegexOptions.IgnoreCase);  
  str   =   reg.Replace(str,@"href=$1d$2$3.aspx");  
   
  writer.Write(str);                          
  }  
  Top

17 楼gsky()回复于 2006-01-14 22:36:15 得分 0

难道每个连接都要做一下   变动吗   怎么总觉得这样很麻烦   可是没有别的办法了吗?  
  很多网站   我鼠标放到超链接上都不是真实地址   而且超链接很多啊   我就是想弄明白这个是怎么一回事。。郁闷Top

18 楼gsky()回复于 2006-01-15 21:08:49 得分 0

继续关注Top

19 楼OSCAR_NJU(死刑犯)回复于 2006-01-15 22:40:30 得分 2

难道每个连接都要做一下   变动吗   怎么总觉得这样很麻烦   可是没有别的办法了吗?  
  很多网站   我鼠标放到超链接上都不是真实地址   而且超链接很多啊   我就是想弄明白这个是怎么一回事。。郁闷  
  ============================  
  我想页面再多的url也就两种情况吧,  
  静态的url,动态的url  
  对于静态的,没话说,自己改,这个不会太多吧,  
  而动态的就更好办了,都是程序的事情了Top

相关问题

  • url重写
  • url重写的问题??
  • 什么时URL重写
  • 如何实现URL重写?
  • 请问如何重写URL地址?
  • 为什么我不能重写URL?
  • URL 重写出现的问题 --------------------------求教?
  • 高手请进,关于url重写
  • 关于url重写的问题
  • 高分求一url重写代码!

关键词

  • 页面
  • 鼠标
  • 教程
  • 浏览器
  • 网站
  • 重写
  • yousite
  • tempwriter
  • 梆定
  • 超链接

得分解答快速导航

  • 帖主:gsky
  • bgu
  • time_is_life
  • hdt
  • Cnapollo
  • sp1234
  • dolfen
  • OSCAR_NJU

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
惹火投票。。火热进行中...
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
CSDN网站24小时值班电话:13552009689
Copyright © 2000-2009, CSDN.NET, All Rights Reserved
GongshangLogo