表单提交后加载消息+重定向

时间:2014-03-07 10:18:11

标签: jquery ajax

我的表单中包含唯一的<input type="text">。我调用一个php文件,但是我做了很多检查(检查文件是否存在,我调用了很多API ......),结果很长。

因此,我正在寻找一个脚本(jquery,ajax,....)做很多事情:

  1. 表单提交,php文件名为
  2. 显示待处理/加载消息(或进度栏)
  3. 完成所有php后,
  4. 将用户重定向到新页面
  5. 我搜索了所有github目录,但没有成功。

    怎么做?是否有插件这样做?

    类似的例子:http://www.statduck.com/

1 个答案:

答案 0 :(得分:0)

使用jQuery:

$.post(url, {FormData: $('#TheFormTagID').serialize()},
        function(data, textStatus, jqXHR)
        {                   
            alert(data); //will alert "Something"
            window.location.href = "your new page";
        },
        "json")
    .fail(function(jqXHR, textStatus, errorThrown) 
        { 
            alert("Error: " + textStatus);
        }); 

在PHP中只需使用:$_POST["FormData"]来获取Form变量,并在PHP脚本echo "Something";的末尾使用Javascript获得结果。

也许有些有用的东西:link

<强>编辑:

让我们说这是PHP:

//Save file
//do something other
$result = new stdClass();
$result->ID = 5;
$result->FileName = "Test.jpg";
echo json_encode($result);  
?>

然后在Javascript function(data, textStatus, jqXHR)中使用以下值:

function(data, textStatus, jqXHR)
        {                   
            alert(data.ID); //will alert 5
            alert(data.FileNa,e); //will alert Test.jpg

        }