Jquery发布ajax变量不会输入PHP

时间:2016-04-12 14:00:14

标签: php jquery

我有以下代码:

$(document).on('submit', function (event) {
    event.preventDefault();
    console.log('submitting');

    hostingURL = '/<?echo $this->CI->uri->uri_string();?>';
    $('form').attr('action', hostingURL);

    var form = $(this);
    $.ajax({
        type: "POST",
        url: hostingURL,
        data: form.serialize()
    }).done(function (data) {
        $(document).unbind("submit");
        $("#maincenter").html(data);
        console.log('posted');
    }).fail(function (data) {
        alert('failed');
    });
});

这是获取请求的URL,并将表单更改为所需的操作,然后将其发布到服务器,并返回数据。

服务器支持我:

echo print_r($_POST);
echo "<br> type: ".$_SERVER['REQUEST_METHOD']." <br>";

似乎我在表单中所做的任何事情都不会真正提交它。数据返回是正确的,但是从服务器端代码响应我得到:Array ( ) 1 type: GET无论我在做什么。

所以我的问题是:我如何才能真正使表单提交帖子数据? jquery函数将在我的所有表单上使用,因此我需要将表单中的每个字段都提交给。

以下是一个示例表单。

示例表单:

<form method="POST">
    <textarea class="textarea col-12" style="height:150px;" id="messageholder" name="profiltekst" placeholder="Profiltekst">
        <? echo $userprofile->profiletext ?>
    </textarea>
    <div class="bottomform">
        <input type="submit" class="makecenter" name="updateprofile" value="Endre profiltekst">
    </div>
</form>

0 个答案:

没有答案