簡體   English   中英

在AJAX請求中傳遞表單數據的麻煩

[英]Trouble with passing form data in AJAX request

我在通過AJAX請求將表單值傳遞給PHP時遇到問題。 根據我的下面的代碼,變量可以傳回,所以我懷疑問題可能與data: $('#signup-form').serialize()

JS:

$.ajax
({
    type: "POST",
    url: "http://www.domain.com/includes/register.php",
    data: $('#signup-form').serialize(),
    success: function(data)
        {
            $('#signup-response').hide();
            $('#signup-response').fadeIn();
            $('#signup-response').html(data);
        },
    error: function()
    {
        alert("fail");
    }
})

形成:

<form id="signup-form" action="" method="POST">
    <input name="email" type="email" class="form-control" id="signupEmail" placeholder="Email address">
    <input name="password1" type="password" class="form-control" id="signupPassword" placeholder="Password">
    <input name="password2" type="password" class="form-control" id="signupPassword2" placeholder="Password">
    <select name="country" id="signupCountry" class="selectpicker">
        <option value="0">Country</option>
        <option>United States</option>
        <option>United Kingdom</option>
        <option>Canada</option>
    </select>
    <select name="gender" id="signupGender" class="selectpicker">
        <option value="0">Gender</option>
        <option>Female</option>
        <option>Male</option>
    </select>
    <button id="signup" class="btn btn-success btn-block signup" type="submit">Sign up</button>
</form>

register.php

<?php
$username = $_POST['signupEmail'];
echo "hello"; // works
echo $username; // doesn't work
?>

試試這個,你需要使用輸入名稱 <input name="email" type="email" class="form-control" id="signupEmail" placeholder="Email address">而不是使用輸入字段id。

 $username = $_POST['email'];

代替

  $username = $_POST['signupEmail'];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM