我有一个窗体,当用户在查询的搜索结果中单击一个按钮时,它会以一种模式弹出。这个表单有三个输入字段和一些其他字段,一旦使用ajax单击submit按钮,这些字段就会附加到表单中。因为这是Django应用程序的一部分,所以我在服务器端捕捉视图中的值。我能够成功地从表单的输入字段中获取数据,但无法从附加字段中获取数据。你知道吗
我对使用ajax还比较陌生,所以很可能我做错了什么,但是看起来数据应该被发送到服务器。有什么问题吗?你知道吗
以下是ajax调用和模式表单的代码:
<script type="text/javascript">
$("#mform").submit(function(){
var c = getCookie('csrftoken');
//var data1 = $().attr("");
var extraData = [];
extraData['venue'] = $("#invite").data("venue");
extraData['artist'] = $("#invite").data("artist");
extraData['f_date'] = $("#invite").data("formatted_date");
extraData['uf_date'] = $("#invite").data("date");
extraData['ticket_url'] = $("#invite").data("ticket_url");
extraData['city'] = $("#invite").data("city");
extraData['region'] = $("#invite").data("region");
extraData['artist'] = $("#invite").data("artist");
var PostData = {csrfmiddlewaretoken: c, additionalValues:extraData}
$ajax({
//context:this,
type : 'POST',
dataType: 'json',
url: '/artistsearch/',
data: JSON.stringify(PostData),
success: function(response){}
});
});
包含要发送的数据的HTML
<ul class= 'list-group'>
{% for ticket in data %}
<li class = 'list-group-item' >
Title: {{ticket.title}}
Location: {{ticket.formatted_location}}
Venue: {{ticket.venue.name}}
Date: {{ticket.formatted_datetime}}
tickets status: {{ticket.ticket_status}}<br>
<a href = {{ticket.ticket_url}}> ticket url</a>
{% if user.is_authenticated %}
<button id = 'invite' type='button' class= 'btn btn-info btn-lg' data-toggle = 'modal' data-target='#myModal' data-artist = {{ticket.artists.name}} data-venue={{ticket.venue.name}} data-date = {{ticket.datetime}} data-formatted_date = {{ticket.formatted_datetime}} data-city= {{ticket.venue.city}} data-region = {{ticket.venue.region}} data-ticket_url={{ticket.ticket_url}} > Invite a friend </button>
<button id = 'save' type = 'button' class = 'btn btn-primary-outline'> Save Concert </button>
{% endif %}
</li>
{% endfor %}
</ul>
您错过了id invite按钮的#选择器,它应该是$(“#invite”)。使用类似data artist的属性,而不是仅仅使用artist,并获得类似$(“#invite”).data(“artist”)或$(“#invite”).attr(“data artist”)的属性。你知道吗
然后把它贴成。。。。你知道吗
变量postData={ 中情局:c, 附加值:extraData } 然后像这样发布数据
相关问题 更多 >
编程相关推荐