JS 错误:未捕获类型错误:“.year-link”。click 不是函数

问题描述 投票:0回答:1

我有以下JS代码:

(".year-link").click(function(event) {
    event.preventDefault();  
    var year = $(this).data("year");  
    var url = window.location.pathname + '?action=year&year=' + year;
    $.get(url, function(data) {
        var receivedData = $(data);  // Convert the received HTML data to a jQuery object
        var posts = receivedData.find('.fenster').html();  // Extract the posts data
        $('.fenster').html(posts);  // Update the current page with the received posts data
    });
});

代码在 Django 模板中使用如下:

{% for jahr in jahre %}
    <div class="flex-item" style="flex-basis: 10%;">
        <a href="?action=year&year={{jahr}}" class="year-link">{{ jahr }} </a>
    </div>

代码执行了应有的操作(!!),但会产生错误,如开发人员工具中所示:

JS 错误:未捕获类型错误:“.year-link”。click 不是函数

如果我用 document.ready 包装我的年份链接函数...,错误就消失了,但页面失去了其行为(单击后没有任何反应):

$(document).ready(function() {
    $(".year-link").click(function(event) {
        event.preventDefault();  
        var year = $(this).data("year");  
        var url = window.location.pathname + '?action=year&year=' + year;
        $.get(url, function(data) {
            var receivedData = $(data);  // Convert the received HTML data to a jQuery object
            var posts = receivedData.find('.fenster').html();  // Extract the posts data
            $('.fenster').html(posts);  // Update the current page with the received posts data
        });
    });
});

我该怎么办?

问候 安德烈亚斯

我尝试过使用 chat-gpt 几天,但是代码要么执行了它应该执行的操作并产生了 JS 错误 或者代码不会产生错误并且不执行任何操作...

javascript
1个回答
0
投票

在您的第一个代码块中,选择器前面缺少

$

(".year-link")
->
$(".year-link")

© www.soinside.com 2019 - 2024. All rights reserved.