[英]how to send the selected value to django?
我尝试使用 ajax 和 django 实现一个搜索按钮,我将所选值发送到服务器,但我无法从 select HTML 标签中获取所选值,变量值始终为空 ({"obj":""} ) ??
HTML :
div class="col-2">
<label style="color : white;">Title</label>
<select name="da" id="da" class="form-control da">
<option selected></option>
{% for obj in ds %}
<option value="{{obj}}">{{obj}}</option>
{%endfor%}
</select>
<button type="submit" class="btn btn-warning btn-lg search">ajax</button>
</div>
阿贾克斯:
var value = $('#da').val();
console.log(value)
$(document).ready(function() {
$('.search').click(function(){
var csrftoken = $('[name="csrfmiddlewaretoken"]').val();
$.ajax({
type: "GET",
url: '/search/ajax/',
data: JSON.stringify({'obj' : value}),
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
"X-CSRFToken": csrftoken
},
success: function(response) {
do somthing ......
},
error: function(rs, e) {
alert(rs.responseText);
}
});
})
});
查看.py
def filter_ajax(request):
if request.method == 'GET':
value = request.GET.get('obj')
print(value)
您必须在单击时设置value
变量。 另外,我对 Django 不太熟悉,但是你需要JSON.Stringify
吗?
var value; $(document).ready(function() { $('.search').click(function() { value = $('#da').val(); // Set here var csrftoken = $('[name="csrfmiddlewaretoken"]').val(); $.ajax({ type: "GET", url: '/search/ajax/', data: JSON.stringify({ 'obj': value }), headers: { 'Accept': 'application/json', 'Content-Type': 'application/json', "X-CSRFToken": csrftoken }, success: function(response) { do somthing...... }, error: function(rs, e) { alert(rs.responseText); } }); }) });
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.