php数组数据在JQuery中不起作用

php数组数据在JQuery中不起作用,php,jquery,html,Php,Jquery,Html,问题出在jQuery中,jsondata.uname没有显示任何结果。如果我在PHP中回显$myarray,并在jQuery中使用data,它将以数组形式显示结果 $(document).ready(function() { $('button#myloginbtn').on('click', function(e) { e.preventDefault(); var username = $('input#myusername').val();

问题出在jQuery中,
jsondata.uname
没有显示任何结果。如果我在PHP中回显
$myarray
,并在jQuery中使用
data
,它将以数组形式显示结果

$(document).ready(function() {
    $('button#myloginbtn').on('click', function(e) {
        e.preventDefault();
        var username = $('input#myusername').val();
        var password = $('input#mypassword').val();
        $.post('home.php', {
            domylogin: 'domylogin',
            username: username, 
            password: password 
        }, function(data) {
            jsondata = JSON.parse(data);
            $('p#auser').text(jsondata.uname); // This is not working
        });
    });
});
home.php:

<?php 
    if (isset($_POST['domylogin'])){
        $myuname = $_POST['username'];
        $mypword = $_POST['password'];
        // temporary testing, later i will return some data from database related to these values
        $myarray = array(); 
        $myarray['uname'] = $myuname;
        $myarray['pword'] = $mypword;

        echo json_encode($myarray);
    }
?>

在您的PHP文件中:-

 $myarray = array(); 
    if (isset($_POST['domylogin'])){
            $myuname = $_POST['username'];
            $mypword = $_POST['password'];             

            $myarray['uname'] = $myuname;
            $myarray['pword'] = $mypword;    

        }

 echo json_encode($myarray);
编写AJAX调用,如下所示:-

$.post('home.php', {
    domylogin: 'domylogin',
    username: username, 
    password: password 
}) 
.done(function( data ) {  // Use done function        
    jsondata = JSON.parse(data);
    if(jQuery.isEmptyObject(jsondata) == false) // check jsondata is empty or not
    console.log(data);
    $('p#auser').text(jsondata.uname); 
 });

希望它能帮助您:-

谢谢大家的支持,我已经解决了这个问题。我的php文件中有一些html代码,在删除“home.php”中的html代码时,一切正常

console.log(jsondata)。希望你会得到什么是错误的。console.log(数据);签入browserjQuery将自动为您解析对对象的响应。在该对象上再次使用
JSON.parse()
将导致错误。删除
JSON.parse(data)
行并使用
$('p#auser').text(data.uname)
试试这个
{'domylogin':1,…}
@VairaMuthu在哪里放置console.log(data);检查我的最新答案。你们在“完成”功能中得到数据了吗?什么都做了,还是并没有运气!