2012-11-02 105 views
1

我正在使用JFormer創建表單,並且可以使用json_encode($ formValues)查看數據,但我無法捕獲服務器上的$ formValues。捕獲jQuery表單數據

var fvalue = <?php json_encode($formValues) ?>; 
    var ftarget = "http://home.server.com/regcreate.php?data="; 
    var a = document.createElement("script"); 
    a.type = "text/javascript"; 
    a.src = ftarget + fvalue; 
    document.body.appendChild(a); 

如果這個值很簡單,那麼這個方法可行。如果我嘗試發送json_encode($ formValues),它不起作用。它不發送任何東西。我正在以正確的方式來解決這個問題嗎?我可以使用Jquery序列化函數而不是json_encode嗎?

回答

1

嗨如果您使用的是jquery,您可以序列化表單並提交使用ajax表單POST。請注意,它不是PHP序列化對象,您可以像正常一樣訪問表單值$ _POST

$('#btnId').click(function() {  

    $.ajax({ 
     //this is the php file that processes the data and send mail 
     url: "regcreate.php", 

     //GET method is used 
     type: "POST", 

     data: $("#Form").serialize(), 
     //Do not cache the page 
     cache: false, 

     //success 
     success: function (html) {    
      //assuming that pgp page returns value boolean value 
      if (html=='1') {     
       //add success message 
      } else alert('Sorry, unexpected error. Please try again later.');    
     }  
    }); 
});