未捕获的ReferenceError:在HTMLButtonElement.onclick上未定义addRecord

时间:2019-12-09 14:33:29

标签: javascript jquery html django dom

当我单击添加记录按钮时,它不起作用,然后给了我一个未捕获的参考错误,但是如果我在浏览器中加载了一个jquery https://code.jquery.com/jquery-3.4.1.min.js脚本之一,它将显示该按钮正常工作。 有什么建议吗?

base.html

<!DOCTYPE html >
{%load staticfiles%}
{% load crispy_forms_tags %}
<html>
<head>
    <meta charset="UTF-8">
     <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
    <link rel="stylesheet" href="{% static 'style.css' %}"/>
    <title>{% block title %}{% endblock %}</title>
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>

</head>
<body class="container-fluid">
<div class="row">
<div class="col-lg-12">

    {% block content %}
    {% endblock %}

</div>
</div>
</body>
</html>

okay.html

...
{% extends "s/base.html" %}
{% load staticfiles %}
{% block content %}

{% block s_base %}
{{ block.super }}
<script>
alert('Helloo');
function addRecord(){
    console.log('hhhffhgfhdf');
}
</script>
{% endblock %}
            <div> <a href="javascript:void(0);"  ><button type="button" class="btn btn-primary" onclick="addRecord();"> Add New Advert </button></a></div>


{% endblock %}

1 个答案:

答案 0 :(得分:0)

我想您似乎不想使用Jquery。

在这种情况下,您可以将脚本添加到标记附近,然后调用addRecord函数,例如:

window.onload = function(){
 var button = document.querySelector('button');

button.onclic k= function(e){
  e.preventDefault();
  addRecord()
}

}

有几种方法可以做到这一点,但这只是一个想法。记得要从您的html按钮中删除onclick服饰