javascript函数没有被调用

标签 javascript jquery html django-templates django-views

在 Django 模板中,我有一个函数

function show_graph(i){
    $("#"+i+"seegraph").click(function(){
        $("#"+i+"graph").show();

    var qaa = {{ question_ids }};

    var qid = qaa[i-1];
        jQuery.ajax({
            url: "/canvas/recreatechart/",
            type: "get",
            data: {qid: qid },
            success: function(response){
                var resp = jQuery.parseJSON(response);
                alert("chart1"+i);
                show_graph("chart1"+i, resp['chart_type'], resp['series_names'], JSON.stringify(resp['data1']), resp['answer'], resp['stories1'], resp['colors'], resp['stacked'], resp['title1']);

                show_graph(resp['second_graph']+i,resp['chart_type'], resp['series_names'], resp['data2'], resp['answer'], resp['stories2'], resp['colors'], resp['stacked'], resp['title2']);
            }

        });

    });
}

并在 show_graph 中立即发出警报,我从中推断出 show_graph 只是没有被调用,但我不知道为什么。

我的控制台没有任何错误,当我尝试在第一次调用中一个一个地提醒每个参数时,它们都按预期显示,尽管“data1”显示为“object Object”,类型为“object”(当我将 data1 字符串化时,它按预期出现,尽管我不知道这是否意味着什么)。

请注意,data1 是一个字典数组,其值是数组的数组。所以,稍微有点复杂,不知道js能不能解析结构。

这就是我的函数没有被调用的原因吗?如果不是,那是什么?如果是这样,我该如何修复它(鉴于这是我必须传递数据的格式)。我怎样才能找到问题?

编辑:我还想指出,我只是测试了一些简单的东西,比如 [5] 来代替 data1,因为我担心那会搞乱函数调用,但我仍然没有从 show_graph 得到警报,所以我认为毕竟不是这样。

最佳答案

您已经在名为 show_graph 的函数中。它不是调用您想要的函数,而是调用自身,然后将另一个单击操作添加到...一个不匹配任何内容的 jquery 选择器。所以重命名你的内部函数,一切都应该工作。

关于javascript函数没有被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8161188/

相关文章:

html - 最小高度为 100% 且内容垂直居中的 CSS 扩展部分

javascript - `DatePickerInput` "className"属性为 `<input/>`

javascript - 当特定 radio 未被选中时调用 javascript 函数

jquery - 如何拥有清晰、锐利和 slim 的 jqueryUI GUI 元素?

html - 以编程方式将网站呈现为来自服务器环境的图像的方法是什么?

javascript - 以特定时间间隔检测 div 移动并运行函数 jQuery

java - GSON 将数组的数组解析为 Java 对象数组

javascript - 无法在具有相同类名的多个元素中定位单个输入(jQuery)

javascript - 如何在 ajax jQuery 中使用变量名

javascript - 基于数组按 ids 组织列表 - jQuery/JS