首页 > 解决方案 > jquery ReferenceError:未将变量定义为数组索引

问题描述

我收到此错误 ReferenceError: postCssID is not defined

如果我在我的 php 文件中添加 js 代码,我的脚本可以工作,但如果我使用单独的 js 文件,我的脚本就不能工作

在 php 中工作

<script type="text/javascript">
    var offsets = offsets || new Array();
    offsets["<?=$pst_cssid?>"] = 5;
    $("#cmt-a-ii<?=$pst_cssid?>").click(function(){
            $.ajax({
            url: "<?=Url::to(['/comment/view-more'])?>",
            type: 'POST',
            data: ({st: '<?=$pst_id?>', cssid: '<?=$pst_cssid?>', offset: offsets["<?=$pst_cssid?>"]}),
            success: function(result){
                $("#cmt-d-ii<?=$pst_cssid?>").append(result);
            }
        });
        offsets["<?=$pst_cssid?>"] += 5;
    });
</script>

但是如果我使用单独的 js 文件不起作用,则错误在此:offsets[postCssID]; 在我的 php 文件中,我只声明变量

<script type="text/javascript">
    var postCssID = "<?=$pst_cssid?>";
    var postID = "<?=$pst_id?>";
    var urlLink = "<?=Url::to(['/comment/view-more'])?>";
</script>

我将路径添加到我的 js 文件:<script src="/sxct/js/ly-extra-script.js"></script>

var offsets = offsets || new Array();
offsets[postCssID] = 5;
$("#cmt-a-ii"+postCssID).click(function(){
    $.ajax({
        url: urllink,
        type: 'POST',
        data: ({st: postID, cssid: postCssID, offset: offsets[postCssID]}),
        success: function(result){
            $("#cmt-d-ii"+postCssID).append(result);
        }
    });
    offsets[postCssID] += 5;
});

标签: javascriptjquery

解决方案


推荐阅读