2010-11-16 82 views
1

我正在尋求標準化使用MVC在服務器端處理ajax #anchors。與asp.net mvc2使用jquery移動時的哈希導航問題

前一個控制器動作被調用我想與阿賈克斯錨每個請求轉換成沒有Ajax錨的要求,從而使控制器代碼不知道有在請求錨:

例如:

1)/用戶/簡檔#用戶/照片應被視爲/用戶/照片

2)/主/索引#用戶/簡檔/ 33應被視爲/用戶/簡檔/ 33

MVC中最好的技術是什麼?那是什麼?

回答

0

這應該在客戶端完成,可能使用jQuery,因爲#符號後面的所有內容都不會發送到服務器。

+0

你能告訴我,告訴我怎麼樣?因爲我對此比較陌生? – hasan 2010-11-16 11:29:12

+0

這很大程度上取決於您的場景。請求是如何執行的?你在使用表格,動作鏈接...... – 2010-11-16 11:57:35

0

我也在同樣的問題上掙扎,我在查看Visual Studio 11 Developer Preview模板代碼後解決了這個問題。我在_layout.cshtml添加以下代碼,請注意,我們必須加載jquery.mobile * .js文件後檔以下腳本標籤:

<script type="text/javascript"> 
      $(document).bind("mobileinit", function() { 
       // As of Beta 2, jQuery Mobile's Ajax navigation does not work in all cases (e.g., 
       // when navigating from a mobile to a non-mobile page, or when clicking "back" 
       // after a form post), hence disabling it. http://jquerymobile.com/demos/1.0a3/#docs/api/globalconfig.html 
       @{ 
        if (ViewBag.JqueryMobileAjaxEnabled != null && ViewBag.JqueryMobileAjaxEnabled == true) 
        { 
        @: $.mobile.ajaxEnabled = true; 
        } 
        else 
        { 
        @: $.mobile.ajaxEnabled = false; 
        } 
       } 
      }); 
     </script> 
    **<script src="http://code.jquery.com/mobile/1.0b3/jquery.mobile-1.0b3.min.js"></script>**