2013-08-07 49 views
2

我有一個PHP文件(的index.php)兩個字段,當我張貼的形式,在javascript我在做什麼形式的數據序列化並將其發送到下一個PHP頁面(results.php響應數據)通過ajax。當我嘗試在成功內打印數據時,它不打印。找到下面的代碼。如何獲得在Ajax調用

<html> 
<head> 
    <title></title> 
    <script src="../scripts/jquery-1.9.1.js"></script> 
</head> 
<body> 
    <form method="post" name="index" id="indexform"> 
     <table border="1"> 
      <tr> 
       <td>Name:</td> 
       <td><input type="text" name="fname"></td> 
      </tr> 
      <tr> 
       <td>Email:</td> 
       <td><input type="text" name="email"></td> 
      </tr> 
      <tr> 
       <td colspan="2"><input type="submit" name="sendData"></td> 
      </tr> 
     </table> 
    </form> 
</body> 
<script type="text/javascript"> 
    $("#indexform").on("submit", function(event) { 
      event.preventDefault(); 
      console.log($(this).serialize()); 
      var formdata = $(this).serialize(); 
     // alert(formdata); 
      $.ajax({ 
       type:"POST", 
       url:"result.php", 
       dataType:'json', 
       data:formdata, 
       success: function(data){ 
        alert(data); 
       } 
      }); 
     }); 
    </script> 

在上述我不能打印成功回調內的數據。

+0

什麼result.php的內容? – James

+1

你可以顯示result.php頁面 –

+0

@James我只是在result.php – krrr25

回答

4

試試這個

<script type="text/javascript"> 
     $("#indexform").on("submit", function(event) { 
       event.preventDefault(); 
       console.log($(this).serialize()); 
       var formdata = $(this).serialize(); 
       $.ajax({ 
        type:"POST", 
        url:"result.php", 
        data:formdata, 
        success: function(html){ 
         alert(html); 
        } 
       }); 
      }); 
     </script> 

在你result.php頁

$name=$_REQUEST['fname']; 
    $email=$_REQUEST['email']; 
    echo $name." ".$email; 
+0

@ krrr25你試試這個 –

+0

如果我改變的dataType其形式獲得價值。 – krrr25

0

回聲results.php頁面中的內容。

例:

echo "two fields $first_field , $second_field successfully inserted. " ; 

此內容的結果作爲數據變量的Ajax響應並存儲。

2

您正在將dataType設置爲json,因此您必須確保只返回有效的json。

這意味着你可以不管你想不echoprint;你應該收集在一個數組或對象的數據,然後一次輸出,如:

echo json_encode($your_data); 
+0

我怎樣才能PHP內 – krrr25

+1

響應值@ krrr25你應該在這裏發表您的PHP腳本。 – jeroen

0

你好我的好友你的html代碼在

<script type="text/javascript"> 
    $("#indexform").on("submit", function(event) { 
      event.preventDefault(); 
      console.log($(this).serialize()); 
      var formdata = $(this).serialize(); 
     // alert(formdata); 
      $.ajax({ 
       type:"POST", 
       url:"result.php", 
       dataType:'json', 
       data:formdata, 
       success: function(data){ 
        alert(data); 
       } 
      }); 
     }); 
    </script> 

你result.php文件的代碼是在

<?php 
    include 'db.php'; 
    $name=$_REQUEST['fname']; 
    $email=$_REQUEST['email']; 
    echo $name." ".$email; 
?> 

現在result.php文件返回輸入姓名和電子郵件地址。