我有两个文件,landing.php 和 test.php。Landing.php 有一个通过 ajax 使用 post 方法提交到 test.php 的表单。如果 ajax 调用成功,浏览器会加载 test.php,此时我遇到了问题。在尝试显示发送到 test.php 的发布数据的值时,我无法弄清楚我做错了什么。
以下是来自landing.php 的ajax 调用。通过查看 Firebug 中的帖子数据,我有理由确定这可以正常工作。
$('#searchForm').submit(function(e) {
e.preventDefault();
var data1 = $('#checkBoxDiv input').serialize() + '&' + 'barcodeID=' + $('#barcodeID').val();
$.ajax({
url: 'test.php',
data: data1,
type: 'POST',
success: function() {
window.location.href = "test.php";
}
});
});
下面是test.php 的内容。
<?php
$bar = $_POST['barcodeID'];
echo "<html>";
echo "<body>";
echo "<p>*" . $bar . "*</p>";
echo "</body>";
echo "</html>";
?>
如果我不使用<p>
from test.php 中的星号,当我在浏览器中到达 test.php 时,我会看到一个完全空白的屏幕。然而,有了它们,我的屏幕上会出现“**”。然而,最令人困惑的部分是,如果我包括
echo $bar;
在 test.php 中,我$bar
在发布数据查看器的 Firebug 响应选项卡中看到了(00-00102 - 完全符合它的值)的值。
经过一番研究,我读到那篇文章是您不想在 URL 栏中显示查询字符串时的首选方法,以及当您有大量数据要发送时使用的方法(这将是对我来说,当一切都说完后,它最终会变成大约五到六百个字符)。我查看了其他 stackoverflow 帖子和文章,试图复制推荐的内容,但仍然无法做到这一点。
我是在做完全错误的事情还是试图以不打算使用它们的方式使用这些方法?