使用JavaScript's FormData对象返回整个html

data submitted using JavaScript's FormData object returns entire html

本文关键字:返回 对象 html FormData JavaScript 使用      更新时间:2023-09-26

我使用JavaScript的FormData对象从表单提交数据。基本上,我有以下代码:

HTML

<form action='test.php' id='test' method='post'>
    <input type='text' name = 'text' />
    <input type='submit' />
</form>

我正在使用AJAX提交此表单。以下是代码:

javascript

var form = document.getElementById('test');
form.addEventListener('submit',function(e) {
    e.preventDefault();
    var xhr = new XMLHttpRequest,
    fd = new FormData(form);
    xhr.open('post','test.php',true);
    xhr.onload = function(oEvent) {
        if (xhr.status == 200) {
              alert(xhr.responseText);
            } else {
              alert("Error " + xhr.status);
            }
    };
    xhr.send(fd);
});

下面是接收请求的test.php文件:PHP

if(isset($_POST['text'])) {
    echo $_POST['text'];
} else {
    echo "Nothing Received";
}

PHP脚本接收发布的表单。问题是,PHP脚本发送的响应文本是我页面的整个原始html标记。我的问题是,如何只读取名为text的输入字段的值,以便上面的echo $_POST['text']行只返回该值?

打印文本后退出即可。

...
echo $_POST['text'];
exit;
...