2012-12-05 40 views
1

那麼這裏是我得到的,基本上是一個按鈕被點擊並執行以下代碼:

Readthis = "MonsterRequest.php?id=<?php echo $_REQUEST['id']; ?>&Mon="; 
    TestVar = TestVar.replace(/\s/g, ""); 
    Readthis = Readthis + htmlencode(TestVar); 
    $('#CenterPiece').load(Readthis); 

似乎一切都如預期,除了當傳遞給Monsterequest的工作。 PHP的帖子並沒有被傳遞到它自己,頁面基本上重新加載它自己,因爲它正在傳遞到主要父母......(我不確定它是否是,但monsterrequest.php似乎工作完全罰款自己的然而,當它被加載時,它根本不能按預期工作,而且我完全被難倒了。我基本上想要在沒有頁面重新加載的情況下發布數據。 onsterrequest.php: http://pastebin.com/fiFjjBZg

回答

7

你熟悉AJAX頁面發佈數據?原諒我,如果你已經知道這一點,但如果你不知道:

Ajax將數據發佈到一個外部php文件,該文件處理它接收到的數據,併發回一個答案。它看起來像這樣:

文件#1:

<html> 
    <head> 
     <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 
     <script type="text/javascript"> 
      $(document).ready(function() { 
       $('#Sel').change(function() { 
        var opt = $(this).val(); 
        var someelse = 'Hello'; 
        var more_stuff = 'Goodbye'; 
        $.ajax({ 
         type: "POST", 
         url: "receiving_file.php", 
         data: 'selected_opt=' + opt + '&something_else=' +someelse+'&more_stuff='+more_stuff, 
         success:function(data){ 
          alert('This was sent back: ' + data); 
         } 
        }); 
       }); 
      }); 
     </script> 
    </head> 
<body> 

<select id = "Sel"> 
    <option value ="Song1">default value</option> 
    <option value ="Song2">Break on through</option> 
    <option value ="Song3">Time</option> 
    <option value ="Song4">Money</option> 
    <option value="Song5">Saucerful of Secrets</option> 
</select> 

文件#2:receiving_file.php

<?php 
    $recd = $_POST['selected_opt']; 
    echo 'You chose: ' . $recd; 
如果你讀了monsterrequest
+0

我還沒有嘗試這種形式的帖子,但我認爲這將是我的粘貼bin ..我試圖加載到我的主頁上的外部頁面形式,但我會給這個去真正的快速和發佈結果 –

+0

是的,$ .post是相同的,但使用較長的$ .ajax格式在遇到錯誤並需要將所有內容分解並逐步分析時很有用。 – crashwap

+0

好了試了一下後,這實際上是我想要去的路線,頁面成功地正常工作,沒有刷新 –

0

我基本上要,而無需重新加載

使用jQuery's $.post(...)

乾杯

+0

,我使用並加載,當它造成的問題翻到另一頁上 –

+0

在此處粘貼您的*相關*代碼。您的問題的代碼顯示沒有提及$ .post,只使用$ .load。 – Madbreaks

+0

它在粘貼文件夾中._。 –