Я пытаюсь обновить значения таблицы, используя ajax в Symfony, операция заключается в том, что когда я нажимаю кнопку обновления, он получает идентификатор выбранной строки и новое значение обновленного атрибута.
это мой файл ветки:
<tbody>
{% for post in post %}
<tr>
<td>{{ post.id }}</td>
<td>{{ post.title }}</td>
<td><input type="text" id="description" value="{{ post.description }}"></td>
<td>{{ post.category }}</td>
<td> <input type="submit" name="update" value="update"> </td>
</tr>
{% else %}
<tr>
<td>No Record Found in the database ! </td>
</tr>
{% endfor %}
</tbody>
это мой код jquery и ajax в одном файле ветки:
<script type="text/javascript">
$('.plus').on('click', function (e) {
$this = $(this);
$.ajax({
type: 'POST',
url: '/cart/update',//
async: false,
dataType: 'JSON',
data: {postid: $this.data({{ post.id }}),description: $this.find("#description").val()},
success: function (data) {
if(data.success == false){
alert('error')
}
}
});
});
</script>
это моя функция контроллера i, где я хочу получить значения идентификатора и новое описание обновленной строки:
/**
* @Route("/cart/update", name="cart_update")
*/
public function cartUpdateAction( Request $request ) {
$response = new JsonResponse();
$requestData = $request->request->all();
$postid = $requestData['postid'];
$Description = $requestData['description'];
$em = $this->getDoctrine()->getManager();
$post = $em->getRepository('AppBundle:Post')->find($id);
$post->setTitle($title);
$post->setDescription($description);
$post->setCategory($category);
$em->flush();
}