jqGrid调用ASP.NET MVC控制器动作丢失Web应用程序名称

时间:2009-10-27 04:01:29

标签: jquery asp.net-mvc jqgrid

从IIS 6使用jgGrid时出现问题。我的javascript看起来像:

jQuery("#sandgrid").jqGrid({
    url: '/Deposit/Search?startDate=' + startDate + '&endDate=' + endDate,
    datatype: 'json',
    .....

它在我的本地使用开发Web服务器上正常运行。但是当我部署到IIS时。它无法检索数据,因为它将请求发送为http://xxx.xxx.xxx.xxx/deposit/search?... 而不是http://xxx.xxx.xxx.xxx/appName/deposit/search?...

有人能告诉我如何使其正确吗?顺便说一下,我在IIS 6上设置了“通配符映射”来运行ASP.NET MVC。

谢谢!

1 个答案:

答案 0 :(得分:1)

请改用此代码:

jQuery("#sandgrid").jqGrid({
    url: '<%= Url.Action("Search", "Deposit") %>?startDate=' + startDate + '&endDate=' + endDate,
    datatype: 'json',
    .....

Url.Action()方法会自动将虚拟目录路径添加到URL中。