从Ajax返回返回整个html结构

时间:2013-01-15 18:25:31

标签: javascript ajax jquery

您好我正在学习使用jQuery / ajax.And我似乎遇到了一些问题。当我尝试发布一些表单数据时,我从服务器返回我的整个html结构和我返回的数据。

这是我的HTML:

   ....
   <form id="submitData" method="post" action="">
        <div>
            <label for="FirstName">First Name:</label>
            <input type="text" id="FirstName" name="FirstName"/><span class="error">*</span>
        </div>
        ........
        <div id="textearea">
            <label for="Message">Message:</label>
            <textarea name="Message"></textarea><span class="error">*</span>
        </div>
        <input type="submit" id="submit" name="submit" value="Submit"/>
    </form>
    .....

这是我的PHP代码:

<?php
      if(isset($_POST['data'])){
          $jsonData = json_encode($_POST['data']);

          return $jsonData;
      }
   ?>

这是我的jQuery代码:

$(document).on('submit' , 'form#submitData' , function(e){

     var formData = $(this).serializeArray();
     console.log(formData);

     $.ajax({
         url:'index.php',
         type:'POST',
         datatype:'json',
         data: { data : formData},
         success : function(data){
             for(var i = 0; i < data.length; i++){
                 console.log(data);

             }
         },
         error : function(s , i , error){
             console.log(error);
         }
     })
     e.preventDefault();
 });

我尝试在循环中访问数据,但我似乎从html结构中取回了这封信。我还应该提到表单的html使用jquery load()加载到页面中。

如何制作它以便仅回溯编码数据?

1 个答案:

答案 0 :(得分:2)

从单独的PHP页面获取它:

$(document).on('submit' , 'form#submitData' , function(e){

     var formData = $(this).serializeArray();
     console.log(formData);

     $.ajax({
         // change here
         url:'ajax.php',
         type:'POST',
         datatype:'json',
         data: { data : formData},
         success : function(data){
             for(var i = 0; i < data.length; i++){
                 console.log(data);

             }
         },
         error : function(s , i , error){
             console.log(error);
         }
     })
     e.preventDefault();
 });

并将您的PHP代码放在那里。