如何在django中用javascript函数打开html模板

zte4gxcn  于 2023-01-04  发布在  Java
关注(0)|答案(1)|浏览(196)

我是django的新手。我想打开一个位于项目模板文件夹中的名为“addstylist.html”的html页面。我想在点击按钮时实现一个特定的条件。如果这个特定的条件为真,我就想导航用户到“addstylist.html”,否则就停留在同一个页面上。我的按钮功能工作正常,但我无法导航到那个页面。总的来说,我的navbar锚标签导航正常,但是我不知道在我的静态文件夹中的js文件中到底应该给予addstylist.html的哪个文件路径。
我已经为静态文件和模板文件配置了urls.py、views.py和settings.py。HTML文件
'

<form>
            <div class="form-group">
                <label for="Password1">Enter Admin code</label>
                <input type="password" class="form-control" id="Password1" >
                      
            </div>
               
            </div>
            <div class="modal-footer justify-content-center" >
              {% comment %} goes to href="addstylist.html" {% endcomment %}
              <button class="LogInBtn" id="LogInBtn">LogIn</button>
            </div>
          </form>

第一个月

document.getElementById("LogInBtn").onclick = function () { 
    var code = document.getElementById("Password1").value; 
    
    //check empty password field 
    if(code == "") {  
        alert("**Fill the password please!");  
        return false;  
     }  
    else if(code == "famu") {  
        alert("Admin logging...");  
        window.location.assign("addstylist.html")
     } 
    
     else{  
    alert("Code is not validated. We can't log you in :(");

'
urls.py
'

from django.contrib import admin
from django.urls import path
from pages import views

urlpatterns = [
    path("", views.index, name="index"),
    path("about", views.about, name="about"),
    path("services", views.services, name="services"),
    path("contact", views.contact, name="contact"),
    path("addstylist", views.addstylist, name="addstylist"),
]

'views.py
'

from django.shortcuts import render, HttpResponse
from .models import AdminPanel

def index(request):
    admin = AdminPanel()
    admin.code = "famu"
    return render(request, "index.html", {'admin': admin}) 

def about(request):
    return render(request, "about.html")

def services(request):
    return render(request, "services.html")

def contact(request):
    return render(request, "contact.html")
# button click pages 
def addstylist(request):
    return render(request, "addstylist.html")

'

4c8rllxm

4c8rllxm1#

你的代码应该是这样的:

document.getElementById("LogInBtn").onclick = function () { 
var code = document.getElementById("Password1").value; 

//check empty password field 
if(code == "") {  
    alert("**Fill the password please!");  
    return false;  
 }  
else if(code == "famu") {  
    alert("Admin logging...");  
    window.location.href = "addstylist"
 } 

 else{  
alert("Code is not validated. We can't log you in :(");

尝试以上更新的代码.你只需要到重定向位置href到新的href如果条件满足像这样下面像作品:

window.location.href = "addstylist"

或提供带有应用程序URL的路径。

相关问题