2011-07-14 57 views
4

我正在將現有的ASP.NET網站轉換爲使用jQuery Mobile控件。我做的第一件事是用新的主頁和移動控件替換Login.aspx。但是,現在登錄發生後,在代碼隱藏中,有一個Response.Redirect到Default.aspx。發生這種情況時,會發生JavaScript錯誤,整個頁面轉儲並且無法加載。JQuery Mobile - 有沒有辦法關閉整個頁面的AJAX?

我的假設是,jQuery手機中的mechnanism(s)嘗試AJAX的一切並不能很好地與MS.NET生成的腳本一起玩。所以我想讓jQuery忽略重定向而不是AJAX化。

問題是,我看到的所有解決方案都與向錨標記添加代碼有關,但我從後面重定向,而不使用錨標記。

回答

14

將屬性data-ajax="false"添加到頁面上的<form>標記。這樣,當提交登錄表單時,jQuery Mobile不會嘗試使用AJAX更新頁面。

+0

謝謝 - 這是訣竅! –

0

請參考JQueryMobile文檔here

最簡單的方法是有這個,ajaxFormsEnabled :false

+1

我不會用這個。 'ajaxFormsEnabled'選項已被棄用,並且從Beta 1開始已被刪除。請參閱http://jquerymobile.com/blog/2011/06/20/jquery-mobile-beta-1-released/和https:// github。 com/jquery/jquery-mobile/commit/8929ac33b9f73d0a8cb5d3476682f8c3d2423830 – Greg

+0

我的不好,我只用它在阿爾法上,所以不知道Beta中的變化。感謝您的高舉。 – Illuminati

+0

FWIW,您仍然可以使用'ajaxEnabled'選項。 – Greg

5

如果您正在使用jQuery移動,那麼你可以使用下面的代碼通過頁面禁用阿賈克斯。

<script> 
    $.mobile.ajaxEnabled = false; 
</script> 
+0

這對於response.redirect不起作用。 – samir105

相關問題