2016-04-22 5 views
0

Я работал в jQuery, но не смог заставить его работать над шаблоном.jquery не работает в Django

forms.py

class DowncallForm(forms.ModelForm): 
engineer = Engineer.objects.all() 

class Meta : 
    model = Call 
    fields = ['problem_type', 'status', 'remarks', 'call_date', 'exp_closing_time', 'tat', 
       'assigned_engineer'] 
class Media: 
    js = ('js/downcall_validation.js',) 

downcall.html

<html> 
<head> 
    <title>Downcall Detail</title> 
     <script type="text/javascript" src="{% static "js/downcall_validation.js" %}"></script> 
     <script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.min.js"></script> 
     <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> 

     <script src="//code.jquery.com/jquery-1.9.1.js"></script> 
     <script src="//ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.min.js"></script> 
</head> 
<body> 

    {% block content %} 
     {{ DowncallForm.media }} 
<form method="post" action="" id="downcall_register_form" enctype="multipart/form-data"> 
    {% csrf_token %} 
<div id="div_id_tat" class="form-group"> 
    <label for="id_tat" class="control-label requiredField"> 
    Tat<span class="asteriskField">*</span> 
    </label> 
    <div class="controls "> 
    <input class="numberinput form-control" id="id_tat" name="tat" type="number" /> 
    </div> 
    </div> 

я включил файл мультимедиа в моем forms.py и загрузить статические файлы в шаблоне HTML, как {% нагрузки staticfiles%} ... Те же шаги работают для другой формы шаблона, но не для этого.

вот файл jquery .. downcall_validation.js

$(document).ready.(function() { 
    alert("hai"); 
    // Setup form validation on the #register-form element 
    // downcall_register_form==> form id 
    $("#downcall_register_form").validate({ 

     //$("#id_tat").rules("add", {min: 1}), 

     // Specify the validation rules 
     //id_tat==> id of the input element 
     rules: { 
      id_tat: { 
       min: 1 
      } 
     }, 

     // Specify the validation error messages 
     messages: { 
      id_tat: "Please enter a positive number" 
     } 

     // submitHandler: function(form) { 
     //  form.submit(); 
     // } 
     //}); 

    }); 

});

Я также включил библиотеки javascript, хотя его не работало.

+2

Что означает «его не работает»? – Sayse

+0

Я пытаюсь установить минимальное значение для элемента tat в html ... но файл jquery не запущен. – itsecurity

+1

Вам нужно четко сказать, что вы хотите делать, что вы пробовали, какой результат вы получаете и какой результат вы ожидаете. – Pouria

ответ

1

Вы должны уточнить, что означает «это не работает».

Однако одна очевидная ошибка заключается в том, что вы включаете свой собственный файл сценария - который зависит от jQuery - перед загрузкой самого jQuery, который не удастся. Переместите свой тег скрипта после jquery.

Кроме того, вы включаете как jQuery, так и jquery-validate дважды, из разных целей. Не делай этого; выберите один и используйте его.

+0

Я попытался использовать этот метод: класс CustomerForm (forms.ModelForm): . . класс Носитель: JS = ('JS/customer_detail.js') , а затем включить его, как {{ .media}} в шаблоне, и написать свой яваскрипта код внутри, что customer_detail.js я добавил просто функция alert() в jquery, чтобы проверить, работает ли она или нет, но не работает в моем шаблоне. – itsecurity