我正在尝试将网址路由实施到我的网络应用中
当我将这个实现到没有QueryStrings
的页面时,它工作正常。
但是当我尝试为使用查询字符串的网页实现相同时,它会给出Jscript运行时错误。和未找到的图像
所以对于 JS 我使用ResolveClientUrl
<script src='<%=ResolveClientUrl("~/raphl_map/raphael-min.js") %>' type="text/javascript"></script>
现在在我的Ajax调用中,我动态生成带有相应urlpath的img标记,并面对那些动态图像的问题,
关于ajax成功响应我正在使用for循环添加li元素
var elAdd = "<li class=" + id_setClass + " > <img src="+photo_src+"/></li>";
$("#ul_itemlist").append(elAdd);
Global.asax中
void RegisterRoutes(RouteCollection routes)
{
// routes.Ignore("{file}.png");
// routes.IgnoreRoute("{file}.png");
// routes.Ignore("{*alljpg}", new { alljpg = @".*\.jpe?g" });
// routes.Ignore("{*allpng}", new { allpng = @".*\.png(/.*)?" });
routes.Add(new Route(@".*\.png", new StopRoutingHandler()));
routes.RouteExistingFiles = false;
routes.MapPageRoute("Home", "Home", "~/homepage.aspx");
routes.MapPageRoute("Login", "Login", "~/Login.aspx");
routes.MapPageRoute("Profile", "Profile/{user_id}", "~/MyProfile.aspx");
}
void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(RouteTable.Routes);
}
我试过的不适合我的事情是
routes.Ignore("{*allpng}", new { allpng = @".*\.png(/.*)?" });
routes.Add(new Route(@".*\.png", new StopRoutingHandler()));
答案 0 :(得分:0)
我认为以下内容应该有效:
routes.IgnoreRoute("{*png}", new { png = @"(.*/)?.*\.png(/.*)?"});
这应排除其中包含.png
的路线(在任何目录中 - 这就是您忘记IMO的那一点)。