0

这是我遇到的一个问题。Ajax 不愿意返回任何值并将其显示在消息框中

这是我的 register.php

<?php
//register.php
$username   = $_POST['txtusername'];


$response= array();
$response[]= $_POST['txtusername'];
$response[]= $_POST['txtusername'];

echo json_encode($response); 

?>

我的表格如下

<div id="divregister">
    <div id="display"></div>
    <table>
        <tr>
            <td colspan="3" style='text-align: center;font-weight: bold;'>Register</td>

        </tr>
         <tr>
            <td style='text-align: right;'>First Name</td>
            <td class="registerinputfieldscolumn">
                <input value= "<?php if(isset($_POST['txtfirstname'])) {echo $_POST['txtfirstname'];} ?>" type="text" name="txtfirstname" id ="txtfirstname" ></td>
            <td class="registererrordisplay" id="registererrorfirstname"></td>
        </tr>

         <tr>
            <td style='text-align: right;'>Last Name</td>
            <td class="registerinputfieldscolumn">
                <input value= "<?php if(isset($_POST['txtlastname'])) echo $_POST['txtlastname']; ?>" type="text" name="txtlastname" id="txtlastname"></td>
            <td class="registererrordisplay" id="registererrorlastname"></td>
        </tr>

         <tr>
            <td style='text-align: right;'>E-Mail Address</td>
            <td class="registerinputfieldscolumn">
                <input value= "<?php if(isset($_POST['txtemail'])) echo $_POST['txtemail']; ?>" type="text" name="txtemail" id="txtemail"></td>
            <td class="registererrordisplay" id="registererroremail"></td>
        </tr>


        <tr>
            <td style='text-align: right;'>Username</td>
            <td class="registerinputfieldscolumn">
                <input value= "<?php if(isset($_POST['txtusername'])) echo $_POST['txtusername']; ?>" type="text" name="txtusername" id ="txtusername"></td>
            <td class="registererrordisplay" id="registererrorusername"></td>
        </tr>

        <tr>
            <td style='text-align: right;'>Password</td>
            <td  class="registererrordisplay"><input type="password" name="txtpassword" id="txtpassword"></td>
            <td  id="registererrorpassword"></td>
        </tr>

         <tr>
            <td style='text-align: right;'>Confirm</td>
            <td class="registerinputfieldscolumn">
                <input type="password" name="txtconfirmpassword" id="txtconfirmpassword"></td>
            <td></td>
        </tr>

        <tr>
            <td  id ="registerdisplay" style='text-align: right;font-size: 12px;color:red;'>dfghjkl</td>
            <td style='text-align: right;'>
                <input type='button' id ="btnregister" style='width: 60px;height:25px;margin-right:75px;' value="Register"></td>
            <td></td>
        </tr>
    </table>
</div>

这里的ajax脚本如下。在警报框中没有得到任何响应。非常感谢您的任何帮助。

<script>

        $(document).ready(function(){

            $("#btnregister").click(function(){

                  $.ajax({
                    type: 'POST',
                    url: 'register.php',
                    dataType: 'text',
                    success: function(data) {alert(data);},
                    data: {"txtusername": $("#txtusername").val()}
                });


            });


        });
</script>
4

1 回答 1

2
 data: {txtusername: sample}

您在哪里定义了“样本”变量?它似乎不存在,所以你实际上没有发送任何价值。然后什么都没有返回,因为没有数据可以创建响应。

于 2013-11-12T20:56:23.827 回答