簡體   English   中英

jQuery AJAX單擊鏈接,然后重新加載頁面

[英]Jquery AJAX on click link then reload page

我查看了其他帖子,並且對我有所幫助,但是由於我不精通Jquery或AJAX,因此我想確保自己在正確地做自己需要的事情。

在我的主頁(基本URL)上,基於用戶想要查看的視圖,我有2個不同的輸出。 我在屏幕上有一個切換按鈕,在按鈕的兩側都有一個鏈接。 當前,當單擊鏈接時,將調用我的PHP,使用選定的視圖設置會話變量並返回指定的視圖。 這將更改我的URL,即www.mysite.com/view/A,然后單擊另一個切換鏈接會將URL更改為ww.mysite.com/view/B。

我的問題是我正在使用分頁,並且需要為正確的頁面導航指定正確的URL段,但對於普通用戶導航,如果他們離開主頁然后返回,則將顯示正確的視圖(因為選擇的視圖是在會話變量中),但URL可能是www.mysite.com等。我不想編寫一堆邏輯來確定頁面是基本URL還是ww.mysite.com/view/A等。

以下功能當前根據選擇/單擊的視圖更改我的切換按鈕(從左到右)。 我想向該函數添加邏輯以調用我的PHP代碼,該代碼將設置會話變量而不更改URL,然后刷新頁面以顯示所選視圖。 我知道這很簡單,我在網上找到了一個類似的示例,但我想確保自己做的正確。

<script>
    $('#toggle-control a').click(function(){
        $(this).next('ul').slideToggle('500');
        $(this).find('i').toggleClass('fa-bars fa-arrow-left');
    });
    </script>

好的,所以我不確定我是否會跟進,對此我深表歉意,盡管您可能會更加清楚。 據我所知,您想完成兩個任務:(1)您想弄清楚如何使用jQuery AJAX將會話變量發布到PHP,以及(2)您要確保切換基於視圖更改位置。

K,依此類推(1),以下內容使您可以在腳本中傳遞會話變量。

var sessionVar = 1;
var data = {};
data.sessionVariable = sessionVar;

          jQuery.ajax({
                type: "POST",
                url: YOUR PHP FILE HERE
                data: data,
                success: function(data) {
                },
            });       

在你的PHP中:

if ($_POST) {
    $sessionVar  = $_POST['sessionVariable'];

我建議使用jQuery的.css()來控制切換按鈕的顯示方式以及使用適當邏輯的位置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM