0
我有一个表单中有几个域,在Save
上点击它会触发一个AJAX请求来更新我的数据。如果我填写表单中的所有字段进行更新,目前它只能工作,因为我通过$('#field').val()
,但如果我只想更新其中一个字段,该怎么办?我如何能做到这一点,而不需要该领域的休息,因为我用这个多编辑基于数据的,我选择更新通过REST API的AJAX PUT请求传递唯一的表单域
哪一行(S)是我的代码:
HTML :
<form id="create_project" method="POST" enctype="multipart/form-data">{% csrf_token %}
<div>
<label>Priority:</label>
<select id="priority_field">
<option selected="selected">Select Your Priority</option>
<option value="Low">Low</option>
<option value="Normal">Normal</option>
<option value="Medium">Medium</option>
<option value="High">High</option>
<option value="Critical">Critical</option>
</select><br>
<label>Assign To: </label>
<select id="assign_to_field" onchange="filter_by_users();">
<option selected="selected">Select Your User</option>
<option value="None">None</option>
{% for user in selected_project.user.all %}
<option value="{{ user }}">{{ user }}</option>
{% endfor %}
</select>
<br>
<label> Start Date:</label>
<input type="date" class="form-control" id="start_date_field"><br>
<label>Duration:</label>
<input type="number" class="form-control" id="duration_field"><br>
</div>
<div class="modal-footer modal_styling">
<button type="button" class="btn btn-primary" onclick="editForm()">Edit
</button>
<button type="button" class="btn btn-default" data-dismiss="modal">Cancel
</button>
</div>
</form>
的javascript:
// TASK MULTI EDIT
function editForm(){
var selected_task = gantt.getSelectedTasks();
for(var i = 0; i < selected_task.length; i++){
var task = selected_task[i];
var data = gantt.getTask(task);
$.ajax({
type: 'PUT',
url: '/api/dashboard/workorder_detail/' + data.workorder_id + '/',
data: { "id" : data.workorder_id,
"priority": $('#priority_field').val(),
"assign_to": $('#assign_to_field').val(),
"start_date": $('#start_date_field').val(),
"duration": $('#duration_field').val(),
},
success: function() {
location.reload();
},
error: function (err) {
alert("Failed");
}
})
}
}
任何帮助非常感谢,谢谢。
您好@Ferhat,非常感谢您的帮助,这看起来可行的,让我在我的代码来实现这一点,我再和你在一段时间 –
是相信你应该使用它。 @ M.Izzat –
再次@Ferhat,我添加我的更新代码顶部,它不工作,因为显然'postData'传递一个空的数组。我敢肯定它是一个业余的错误,我正在研究它,我appreaciate,如果你可以给它看起来 –