因此,我有一個頁面,如下所示: alt text http://img704.imageshack.us/img704/5973/croppercapture3.png如何在我的頁面中設置一個變量基於ASP.NET MVC中我的控制器動作的JavaScript?
這是我的基本消息收件箱。我現在有2頁,收件箱和發送(最終會有其他人)。這些都共享相同的視圖,並且只有2個不同的操作來填充適當的數據。
右側(消息列表)中的元素是基於我的兩個控制器操作Inbox(int?page)和Sent(int?Page)填充其數據的分部視圖。
所以,我有一個視圖「MessageView」和一個部分視圖「MessageList」之間共享收件箱/發送。
但是,我現在必須讓這些箭頭按鈕(「<」「>」)使用Ajax工作。我知道如何很好地使用jQuery ajax調用,並且我知道如何呈現動作調用的結果(它返回一個局部視圖)。
的問題來自於一個事實,即,使這些分頁AJAX調用JavaScript需要知道兩件事情:
- 當前頁是什麼(無論是/消息/收件箱或/消息/發送)
- 當前頁面是什麼(在查詢字符串中指定,即/ messages/inbox?page = 2)。
不知道我在哪個頁面(收件箱或發送),它不知道哪個網址,使ajax調用。是否應該回發到/ messages/inbox或/ messages/sent?
如果我沒有使用Ajax加載這些消息,它將會很簡單,只需將相應的url加載到「<」和「>」按鈕的鏈接標記中即可。但我不能,因爲我的一部分要求指出,它必須加載下面的消息,而不會明顯刷新到新頁面。
當他們點擊箭頭時,它不會跟隨鏈接。我正在做一個jquery ajax調用來加載下面的消息。那麼,如何重寫網址幫助我? – KingNestor 2009-12-21 20:50:59
另外,如果他們前往www.mysite.com/messages/sent,該怎麼辦?現在,JavaScript需要知道發送的頁面是直接加載的。因爲用戶沒有點擊菜單上的「發送」。 – KingNestor 2009-12-21 20:51:43
然後,您可以改寫它們的onclick事件。 '('#nextArrow')。bind('click',{box:myBox,page:myPage},function(e){doMyAjaxCall(e.data.box,e.data.page);})' – Jacob 2009-12-21 21:00:08