【问题标题】:Flask fails to import custom jQueryFlask 无法导入自定义 jQuery
【发布时间】:2019-08-22 16:21:10
【问题描述】:

我已经用一个简单的表单设置了一个 Flask 服务器。我想添加一张地图,以便用户可以按地区选择。我找到了 JQVMap 并一直在尝试让 this 示例与 Flask 一起使用。

我下载了 dist 目录。
把它放在我的静态 Flask 目录中。
并使用了下面的代码。

使用此 html 进行引用导入:

<link href="{{ url_for('static', filename='dist/jqvmap.css') }}" media="screen" rel="stylesheet" type="text/css" />

<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.3.min.js"></script>

<script type="text/javascript" src="{{ url_for('static', filename='dist/jquery.vmap.js') }}"></script>

<script type="text/javascript" src="{{ url_for('static', filename='dist/maps/jquery.vmap.usa.counties.js') }}"
    charset="utf-8"></script>

<script type="text/javascript">
    jQuery(document).ready(function () {
        jQuery('#vmap').vectorMap({
            map: 'usa_counties_en',
            enableZoom: true,
            showTooltip: true,
            hoverColor: '#C9DFAF',
            onRegionClick: function (event, code, region) {
                event.preventDefault();
            }
        });
    });
</script>

这是驱动它的python:

@app.route('/map/', methods=['GET', 'POST'])
def mapLoc():
    return render_template('map.html')

连接到该页面后,我会在所有文件提取中获得 html 代码 200 或 304。
该网页不呈现任何内容。
控制台报错:
"TypeError: jQuery(...).vectorMap 不是函数"

【问题讨论】:

  • 检查 HTML(查看页面源代码)以查看 CSS linkhref 是否正确呈现。

标签: javascript python jquery flask jqvmap


【解决方案1】:

我无法重现“TypeError:jQuery(...).vectorMap 不是函数”,也无法重现 200/304 HTTP 响应代码。 (确保您在脚本标签中使用了正确的路径?)。但是,由于您的模板不包含这些行,所以没有渲染任何内容

<body>
  <div id="vmap" style="width: 900px; height: 600px;"></div>
</body>

这表明应该在哪里渲染 jqvmap。

【讨论】:

    猜你喜欢
    • 2021-10-16
    • 2015-01-18
    • 1970-01-01
    • 2021-07-11
    • 1970-01-01
    • 2023-03-13
    • 2020-08-24
    • 2019-02-25
    • 1970-01-01
    相关资源
    最近更新 更多