jquery ajax数据类型json不适用于php关联数组


jquery ajax datatype json is not working with php associative array

我是stackflow的新手,在使用关联数组中的jquery的json-ajax编码值时遇到了一些问题,jquery脚本什么都没做!

它是一个什么都不做的脚本,但通过json编码将用户名和密码返回给您。。。

这是我的index.html文件代码:

<html>
<head>
    <title>test jquery</title>
    <script type="text/javascript" src="js/jquery.js"></script>
    <script type="text/javascript">
    $(document).ready(function() {
        $("#button").click(function() {
            var sendu = $("#username").val();
            var sendp = $("#password").val();
            $.ajax({
                type: "POST",
                url: "ajax.php",
                data: "username="+sendu+"&password="+sendp,
                dataType: "json",
                success: function(msg,string,jqXHR){
                    $("#result").html(msg.name);
                }
            });         
        });
    });

    </script>
</head>
<body>
    Name: <input type="text" id="username" name=""username /> <br />
    Password: <input type="password" id="password" name="password" /><br />
    <input type="button" value="send" id="button" />
    <div id="result"></div></p>
</body>
</html>

这是php文件:

<?php 
$name = $_REQUEST['username'];
$password = $_REQUEST['password'];
$a = array('name'=>$name, 'password'=>$password);
$c = json_encode($list);
echo $c;

 ?>

因此,当我删除dataType:"json"时,当我从php文件中删除关联数组时,一切都很顺利,一切都正常!

这是删除json编码后的:

html:

<script type="text/javascript">
$(document).ready(function() {
    $("#button").click(function() {
        var sendu = $("#username").val();
        var sendp = $("#password").val();
        $.ajax({
            type: "POST",
            url: "ajax.php",
            data: "username="+sendu+"&password="+sendp,
            success: function(msg,string,jqXHR){
                $("#result").html(msg);
            }
        });         
    });
});

</script>

和php文件:

<?php 
$name = $_REQUEST['username'];
$password = $_REQUEST['password'];

$c = "your name is ".$name."<br />and your password is ".$password;
echo $c;

 ?>

还有一件事,我不是英国人,所以如果你发现任何常见的语法错误,请忽略!

我注意到AJAX调用中的这一行应该是:

data: "username="+sendu+"&password="+sendp,

应为:

data: {username: sendu, password: sendp}

这样,您就可以在使用dataType:JSON 时访问变量