2017-02-10 1 views
0

django URL을 navbar의 jquery 코드에서 href 태그로 마지막으로 사용하면 작동하지 않지만 URL을 제거하고 '#'jquery가 잘 작동하면 . 이것이 장고 URL과 관련이 있다고 생각합니다 (아마). 어쨌든, 저는이 문제를 해결하기를 원합니다. 왜 이런 일이 일어나고 있는지 그리고 어떻게이 문제를 해결할 수 있는지 말해주십시오. 아래는 기본 템플릿이고 url.py 이며 각 URL은 별도의 HTML 파일을 가리 킵니다. 예./가정/포인트 당신은에 "/"를 추가 할 필요가django 템플릿, urls 및 jquery 문제가 있습니다

base.html

<html> 
<head> 
    {% load staticfiles %} 
    <meta charset="UTF-8"> 

    <title>{% block title %}{% endblock %} | Vasu Genset Pvt. Ltd.</title> 

    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> 

    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> 

    <link rel="stylesheet" href="https://bootswatch.com/paper/bootstrap.min.css"> 

    <link rel="stylesheet" type="text/css" href="{% static 'index/css/index.css' %}"> 

    <link rel="stylesheet" href="{% static 'index/css/products-style.css' %}"> 

    {% block style %}{% endblock %} 


</head> 
<body> 

    <nav class="navbar navbar-default"> 
     <div class="container"> 
      <div class="navbar-header"> 
       <a class="navbar-brand" href="#" >Vasu Genset Pvt. Ltd.</a> 
       <button class="navbar-toggle collapsed" data-toggle="collapse" data-target="#mydropdown"> 
        <span class="icon-bar"></span> 
        <span class="icon-bar"></span> 
        <span class="icon-bar"></span> 
       </button> 
      </div> 
      <div id="fh5co-navbar" class="collapse navbar-collapse" id="mydropdown"> 
       <ul class="nav navbar-nav navbar-right" id="navbar-change"> 
        <li><a class="active" href="#">Home</a></li> 
        <li><a href="#">About Us</a></li> 
        <li class="dropdown"> 
        <a href="/productsandservices/" class="dropdown-toggle" data-toggle="dropdown">Products & Services <span class="caret"></span></a> 
         <ul class="dropdown-menu"> 
          <li><a href="/generatorrepair/">Generator Repair</a></li> 
          <li><a href="/generatormaintenance/">Generator Maintenance</a></li> 
          <li><a href="/alternator/">Alternator Repair & Maintenance</a></li> 
          <li><a href="/amc/">AMC Service Provider</a></li> 
          <li><a href="/spareparts/">Spare Parts</a></li> 
          <li><a href="/generatorrentalhire/">Generator Rental & Hire</a></li> 
          <li><a href="/synchronizing/">Synchronizing Panel</a></li> 
          <li><a href="/amfpanel/">AMF Panel</a></li> 
          <li><a href="acousticenclosures">Acoustic Enclosures</a></li> 
         </ul> 
        </li> 
        <li><a href="/contactus/">Contact Us</a></li> 
       </ul> 
      </div> 
     </div> 
    </nav> 


    {% block body %} 
    {% endblock %} 

    <footer class="text-center"> 
      <div class="container-fluid"> 
       <div class="row"> 
        <div class="col-xs-offset-1 col-xs-10 col-md-offset-3 col-md-6"> 
         <h4>Copyright &copy; Vasu Genset Pvt. Ltd.</h4> 
        </div> 
       </div> 
      </div> 
    </footer> 

</body> 

    <!-- jQuery (necessary for Bootstrap's JavaScript plugins) --> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 
    <!-- Include all compiled plugins (below), or include individual files as needed --> 
    <script src="{% static 'index/js/bootstrap.min.js' %}"></script> 

    <script> 
     $('.nav li').click(function(e) { 
      console.log(e.currentTarget,"//",e.target,"//",this); 
      e.stopPropagation(); 
      $('.nav li').removeClass('active'); 
      $(this).addClass('active'); 
     }); 
    </script> 


</html> 

urls.py

from django.conf.urls import url 
from . import views 

urlpatterns = { 
    url(r'^$', views.home, name='home'), 
    url(r'^home/', views.home, name='home'), 
    url(r'^aboutus/', views.about, name='aboutus'), 
    url(r'^productsandservices/', views.product, name='product'), 
    url(r'^contactus/', views.contact, name='contactus'), 
    url(r'^generatorrepair', views.generatorrepair, name='generatorrepair'), 
    url(r'^generatormaintenance', views.generatormaintenance, name='generatormaintenance'), 
    url(r'^alternator', views.alternator, name='alternator'), 
    url(r'^amc', views.amc, name='amc'), 
    url(r'^spareparts', views.spare, name='spareparts'), 
    url(r'^generatorrentalhire', views.rentalhire, name='rentalhire'), 
    url(r'^synchronizing', views.synchronizing, name='synchronizing'), 
    url(r'^amfpanel', views.amf, name='amfpanel'), 
    url(r'^acousticenclosures', views.acoustic, name='acoustic'), 
} 

답변

0

about.html 기본에/aboutus/포인트를 home.html 파일하기 나머지 URL은 (나는 네가 이미 처음 네 개만 가지고있는 것을보고있다.) 장고 액세스 할 수 있습니다이 방법 :

url(r'^generatorrepair/', views.generatorrepair, name='generatorrepair'), 
    url(r'^generatormaintenance/', views.generatormaintenance, name='generatormaintenance'), 
    url(r'^alternator/', views.alternator, name='alternator'), 
    url(r'^amc/', views.amc, name='amc'), 
    url(r'^spareparts/', views.spare, name='spareparts'), 
    url(r'^generatorrentalhire/', views.rentalhire, name='rentalhire'), 
    url(r'^synchronizing/', views.synchronizing, name='synchronizing'), 
    url(r'^amfpanel/', views.amf, name='amfpanel'), 
    url(r'^acousticenclosures/', views.acoustic, name='acoustic'), 

이 요소에 "활성"클래스를 추가하기위한 작업 스크립트를 취득하려면, 대신에 "리"의 "A"요소를 선택하고 이전 찾기() 함수를 사용합니다. 좋아요 :

$('.nav a').on('click', function(e){ 
    console.log(e.currentTarget,"//",e.target,"//",this); 
    e.stopPropagation(); 
    $('.nav').find('.active').removeClass('active'); 
    $(this).parent().addClass('active'); 
}); 
+0

아직 jquery가 작동하지 않습니다. –

+0

내 대답을 편집했습니다. 희망이 도움이! –