#operations/urls.py
from django.conf.urls import url
from .views import user_ask
urlpatterns = [
url(r'^user_ask$',user_ask,name='user_ask'),
]
#operations/views.py
from django.http import JsonResponse
from django.shortcuts import render
# Create your views here.
from operations.forms import UserAskForm
def user_ask(request):
user_ask_form = UserAskForm(request.POST)
if user_ask_form.is_valid():
user_ask_form.save(commit=True)
# name = user_ask_form.cleaned_data['name']
# phone = user_ask_form.cleaned_data['phone']
# course = user_ask_form.cleaned_data['course']
#
# a = UserAsk()
# a.name = name
# a.phone = phone
# a.course = course
# a.save()
return JsonResponse({'status': 'ok', 'msg': '咨询成功'})
else:
return JsonResponse({'status': 'fail', 'msg': '咨询失败'})
#operations/forms.py
from django import forms
from .models import UserAsk
import re
class UserAskForm(forms.ModelForm):
class Meta:
model = UserAsk
fields = ['name','course','phone']
ModelForm很重要
{% block myjs %}
<script>
$(function () {
$('#jsStayBtn').click(function () {
{# 如果拿的是非表单类元素的值,用text(),如果是表单类元素用val() #}
var name = $('#companyName').val();
var phone = $('#companyMobile').val();
var course = $('#companyAddress').val();
$.ajax({
type:'POST',
url:'{% url 'operations:user_ask' %}',
data:{
"name":name,
"phone":phone,
"course":course,
"csrfmiddlewaretoken":'{{ csrf_token }}'
},
success:function (callback) {
if(callback.status == 'ok'){
alert(callback.msg);
$('#companyName').val('');
$('#companyMobile').val('');
$('#companyAddress').val('');
$('#jsCompanyTips').text('')
}else {
alert(callback.msg);
$('#jsCompanyTips').text(callback.msg)
}
}
});
{# 如果你不想让submit有提交的动作,那么就需要在事件函数的最后返回false,阻止提交动作的发生 #}
return false;
})
})
</script>
{% endblock %}