ASP.NET 4.0 WebForms路由Javascript不起作用
ASP.NET 4.0 WebForms Routing Javascript not works
我正在尝试使用ASP.NET 4.0 WebForms Routing。这是我的RegisterRoutes功能:
void RegisterRoutes(RouteCollection routes)
{
routes.Ignore("{resource}.axd/{*pathInfo}");
routes.MapPageRoute("GoodInfo", "catalog/good/{good}", "~/GoodInfo.aspx");
routes.MapPageRoute("GoodGroup", "catalog/group/{group}", "~/default.aspx");
}
对于像/catalog/group/{group}
这样的页面,一切都可以。但是catalog/good/{good}
页面存在问题。
第一件奇怪的事:当我打开这个页面时,它会调用两次。所以我看到了Page.RouteData.Values["good"]
的值。Page.RouteData.Values["good"]
中的第一次有正确的值(我的goodId),但第二次我得到了字符串值"WebResource.axd"!
所以我的高速JavaScript在页面上不起作用。当我点击高滑动图像时,页面会重新加载,而不是执行JavaScript。
我添加了这行routes.Ignore("{resource}.axd/{*pathInfo}");
,但对我没有帮助。有什么想法吗?
我已经解决了我的问题!该解决方案由两部分组成。首先,我更改了中的脚本定义
<script type="text/javascript" src="../scripts/something.js"></script>
至
<script type="text/javascript" src="/../scripts/something.js"></script>
感谢MilkyWayJoe提供的解决方案。
其次,我添加了忽略路由
routes.Ignore("catalog/good/{resource}.axd/{*pathInfo}");
而不是:
routes.Ignore("{resource}.axd/{*pathInfo}");
所以我的网络资源在http://mysite.com/catalog/good/41
这样的页面上没有更多的路由
此外,我在页面上有类似http://mysite.com/catalog/good/41/event/seq/1
的脚本事件。为了捕捉所有参数,我将此添加到我的路线规则中
routes.Ignore("catalog/good/{good}/{*query1}");
routes.Ignore("catalog/good/{good}/{query1}/{*query2}");
routes.Ignore("catalog/good/{good}/{query1}/{query2}/{*query3}");
routes.Ignore("catalog/good/{good}/{query1}/{query2}/{query3}/{*query4}");
不要忘记,您的Ignore
声明必须放在MapPageRoute
声明之前:
routes.Ignore("catalog/good/{resource}.axd/{*pathInfo}");
routes.MapPageRoute("GoodInfo", "catalog/good/{good}", "~/GoodInfo.aspx");`enter code here`
相关文章:
- Play 2.5 for Java中的Javascript路由
- 加载成员路由后通过JavaScript初始化
- 从javascript文件中获取JSON,并使用NodeJS在路由文件中显示
- 从 javascript 中调用快速路由
- JavaScript:从具有使用 # 符号的路由的 URL 获取查询字符串
- Javascript路由正则表达式
- Zf2布局css和javascript路径不会在子路由上解析
- 通过express路由调用HTML中的Javascript函数
- 如何在JavaScript中获取路由参数
- 从javascript触发AngularJS路由
- 具有默认值的 JavaScript 路由
- Url.Action 将以前的 URL 与 VS IDE 中 JavaScript 中的当前路由参数相结合
- Laravel 4,在javascript中传递一个变量来路由
- Javascript 无法解析正确的图像路径,当使用 URL 路由在 ASP.Net 中请求页面时
- 嵌套路由:如何查询 Rails DB 并将值存储在 JavaScript 变量中
- 在应用程序启动时生成路由 URL 列表,并插入到 MVC 中的 javascript 文件中
- Javascript:通过开机自检启动文件下载和路由文件
- ASP.NET 4.0 WebForms路由Javascript不起作用
- asp.net MVC路由- javascript url 404错误
- 使用 Angular-route 找不到路由 JavaScript 文件