php var to javascript array



我试图使用PHP和JavaScript填充数组。OnClick,我将PHP变量传递给一个称为addTogroup的函数。此函数是一个Java脚本函数,将传递的VAR添加到JavaScript数组中。当查看律师时,您可以在单击时看到数组被填充,但是当我检查它时,尺寸为零。我究竟做错了什么?我将附加我执行此操作的代码的一部分。如果您需要更多信息,我可以提供更多代码。如果您发现任何错误,请告诉我!非常感谢

        echo "<br>";
        echo '<form>';
        echo '<input type="text" name="user" placeholder="enter name" />';
        echo '<button type="button" onclick="addToGroup('' . $groupName . '', this.form.user.value)" />Add</button>';
        echo '<button type="button" onclick="removeFromGroup('' . $groupName . '', this.form.user.value)" />Remove</button>';
        echo '</form>';
        echo "<br><br>";
    }
    echo '<form>';
    echo '<button type="button" onclick="submitChanges()" />Log</button>';
    echo '</form>';
} else {
    echo 'authentication failed.';
    exit;
}
?>
<script>
var groupChangesAdd = new Array();
var groupChangesRemove = new Array();
function addToGroup(groupName, user) {
        if (groupChangesAdd[groupName] === undefined) {
        groupChangesAdd[groupName] = user;
        console.debug(user);
        $('#groupChangesPlus'+groupName).html('+ ' + user + '<br>');
    } else {
        groupChangesAdd[groupName] = groupChangesAdd[groupName] + ', ' + user;
                           $('#groupChangesPlus'+groupName).html($('#groupChangesPlus'+groupName).htm      l() + '+ ' + user + '<br>');
    }
    console.debug(groupChangesAdd);
}

,因此您将数组用作关联数组(或对象),因此"。如果您想查看" GroupChangesadd"是否有东西,则可以将其记录到开发人员控制台,并在此处检查,也可以使用:

var groups = Object.getOwnPropertyNames(groupChangesAdd);
console.log(groups.length - 1);

有趣的是,"长度"确实作为对象的属性存在,它总是返回0。这就是为什么我从组中删除1个。

希望这会有所帮助!

最新更新