1

我正在使用 JFormer 创建一个表单,并且可以使用 json_encode($formValues) 查看数据,但我无法在服务器上捕获 $formValues。

   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 吗?

4

1 回答 1

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.');              
        }      
    });
}); 
于 2012-11-02T15:43:02.080 回答