我怎样才能加载一个php网页并将该php网页发送给POST而不刷新?

时间:2013-05-22 01:24:56

标签: javascript jquery

我有以下代码:

<body>
    <ul id = "nav">
        <textarea rows="0" cols="0" name="textBoxStuff" maxlength="0" value="">10</textarea>
        <li><a href="test2">Home</a></li>
        <li><a href="test3">About us</a></li>
        <li><a href="test4">Contact</a></li>
    </ul>
    <div id="content">
    <script src="jquery.js"></script>
    <script src="general.js"></script>
    </div>
</body>

当我点击任何链接时,它将加载general.js,其中包含以下代码:

$(document).ready(function() {
    $('#content').load('content/test1.php');
    $('ul#nav li a').click(function (){
        var page = $(this).attr('href');
    $('#content').load(page + '.php');
        return false;
});
});

然后,这将从test2.php或test3.php或test4.php加载内容。这取决于我按哪个链接。它将加载内容而不刷新我想要的网页。但是,在我的test2.php文件中,我希望它输出主页上文本框中写的内容。

这是test2.php中的代码:

<?php
    $textBoxStuff = $_POST['textBoxStuff'];
    echo $testBoxStuff;
    echo '<h1>Home</h1>';
?>

因此,当我在主页面上单击Home时,“Home”这个词会正确显示,但我不知道如何发送$ _POST ['textBoxStuff'];到test2.php文件。 $ _POST ['textBoxStuff']应该等于主网页上textarea内的任何内容。所以我的问题是,如果有人知道如何将文本框中的数据从主页发送到我的test2.php文件而不刷新网页,那么使用jquery。

1 个答案:

答案 0 :(得分:0)

您需要向.load()方法添加第二个参数,以告诉jQuery要向服务器发送什么。
例如:

$('#content').load(page + '.php', {
       textBoxStuff: document.getElementsByName("textBoxStuff")[0].value
});