Javascript 如何在Django视图中发布和捕获jQueryUI滑块输出的值?
我试图将调查表单内部页面上出现的值发布到Django SessionWizardView。我对JavaScript和jQuery相当陌生,但对Python 2.7.3/Django 1.6.2有一些经验 问题:如何在Django视图中通过POST“发送”和“捕获”从jQuery ui滑块发送的数据 传统问题/信息Javascript 如何在Django视图中发布和捕获jQueryUI滑块输出的值?,javascript,django,python-2.7,jquery-ui-slider,django-csrf,Javascript,Django,Python 2.7,Jquery Ui Slider,Django Csrf,我试图将调查表单内部页面上出现的值发布到Django SessionWizardView。我对JavaScript和jQuery相当陌生,但对Python 2.7.3/Django 1.6.2有一些经验 问题:如何在Django视图中通过POST“发送”和“捕获”从jQuery ui滑块发送的数据 传统问题/信息 有什么特别的方法我应该使用吗 我在下面采取的步骤缺少什么 向导\u form.html 我有一个jQueryUI滑块。这将显示在my SessionWizardView的内部页面
- 有什么特别的方法我应该使用吗
- 我在下面采取的步骤缺少什么
<form action="" method="post">{% csrf_token %}
<table>
{{ wizard.management_form }}
{% if wizard.form.forms %}
{{ wizard.form.management_form }}
{% for form in wizard.form.forms %}
{{ form }}
{% endfor %}
{% else %}
{{ wizard.form }}
{% endif %}
</table>
{% load staticfiles %}
{% if 'surveyone' in request.path %}
{% if wizard.steps.current in steps %}
<img src="{% static "survey/images/pathone/" %}{{display_image}}" height="600" width="500" style="border:1px solid black;" align="middle"/>
<section>
<span class="tooltip"></span>
<div id="slider"></div>
<span class="volume"></span>
</section>
/my\u project/src/survey/views.py
这是我的SessionWizardView,其中包含get\u context\u data
和done
方法,这两种方法都很好地工作。我的问题是我不确定如何“接收”发布的数据
我已经阅读了表单向导文档,但没有什么突出的地方,最接近的是方法,但上面说应该在“处理GET或POST请求之后”使用它
所以本质上,我不确定下一步该做什么/尝试什么。有人能提供一些提示或提示吗?由于数据将在SessionWizardView中拾取,我建议在表单中使用隐藏字段滑块值。现在在前端,此字段不可见 滑块函数将更新此隐藏字段中的值,该字段可通过过账表单过账。然后可以从会话wizrd视图中的表单对象访问该值
slide: function (event, ui) {
var value = slider.slider('value'),
volume = $('.volume');
console.log(value)
$.post("/surveyone/", {value : value, csrfmiddlewaretoken : '{{csrf_token}}' } );
},
class SurveyWizardOne(SessionWizardView):
def get_context_data(self, form, **kwargs):
context = super(SurveyWizardOne, self).get_context_data(form, **kwargs)
if self.steps.current in ['5','6','7','8','9','10','11','12','13','14','15','16']:
step = int(self.steps.current)
if step in (5, 6, 7):
image = random.choice(PATH_ONE_IMAGES)
images.insert(step - 5, image)
PATH_ONE_IMAGES.remove(image)
context['display_image'] = image
elif step == 8:
context['first_image'] = images[0]
context['second_image'] = images[1]
context['third_image'] = images[2]
elif step in (9, 10, 11):
image = random.choice(PATH_ONE_IMAGES)
images.insert(step - 6, image)
PATH_ONE_IMAGES.remove(image)
context['display_image'] = image
elif step == 12:
context['fourth_image'] = images[3]
context['fifth_image'] = images[4]
context['sixth_image'] = images[5]
steps = ['5','6','7','9','10','11']
dv_steps = ['8','12']
context.update({'steps': steps,
'dv_steps': dv_steps
})
def done(self, form_list, **kwargs):
return render(self.request, 'Return_to_AMT.html', {
'form_data': [form.cleaned_data for form in form_list],
})