簡體   English   中英

JavaScript 不在 Django 中運行

[英]JavaScript doesn't run in Django

我試圖找出如何在Django運行JavaScript來創建鏈式表單。 但一開始我想知道如何運行JavaScript 我創建了一個簡單的main.js文件,它是static文件。

我已將main.js的路徑添加到html的頭部。 並且腳本必須在頁面加載時運行(只是為了確保我可以向前邁進)。

我在函數的開頭加上了alert ,所以我可以看到js是否已經運行。 但是我在chrome inspect中看不到alertjs

大家能告訴我問題出在哪里嗎?

主文件

$(document).ready(function(){
    alert("OK")
    $.ajax({
        url: "get-possible-levels/",
        type: "POST",
        data: {language: $('#id_language').val()},
    })
})

模板:

{% extends 'base.html' %}
{% load static %}
{% block head %}
    <script src="{% static  "js/main.js" %}"></script>
{% endblock %}
{% block content %}
    {% if user.is_authenticated %}
        <form action="" method="post" enctype="multipart/form-data">{% csrf_token %}
            {{ language_form }}
            <button value="Update" type="submit">Submit</button>
        </form>
    {% endif %}
{% endblock %}

看法:

@login_required                                                                                      
def create_order(request):                                                                           
    language_form = LanguageLevelForm(request.POST or None)                                                                                                                                    
    return render(request,'auth/jobs/create-job-test.html',context={'language_form':language_form})  

編輯: main.js似乎已執行,但它沒有main.js任何alert 我已經檢查過inspect (並且我已經嘗試在alert('ok')之后加上分號):

在此處輸入圖片說明

你的{% load static %}應該是{% load staticfiles %} 之后嘗試按照我在評論中描述的方式刷新頁面。 BTW 你真的包括 JQuery 嗎? 你的問題是關於 JavaScript 的。 在添加 JQuery 代碼之前,您應該嘗試使用 vanilla JavaScript 警報來解決它。 如果您可以使用它,請嘗試將其添加到您的<head>

 <script src="jquery-1.12.0.min.js"></script>

檢查你的 js 文件路徑是否錯誤。如果你的項目文件夾里面有 2 個文件夾(一個是 html 文件,1 個是 Js 文件),然后在你的路徑上用 ../ 你在你的文件夾上上一級,然后進入您的 javascript 文件夾以查找該文件。 所以代替

 <script src="{% static  "js/main.js" %}"></script>

 <script src="../js/main.js"></script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM