Хочу сделать,чтобы статус менялся без перезагрузки страницы. Вывожу в шаблон:
<span id="status-task">Статус задачи: <?php echo Task::getStatusTask($task['status']); ?></span>
<a href="#" class="btn change-status-complete" data-id="<?php echo $task['id'];?>">Отметить выполнение</a><br>
<a href="#" class="btn change-status-failed" data-id="<?php echo $task['id'];?>">Отметить провал</a><br>
В поле $task['status'] хранится число 1,2 или 3, в зависимости от текущего статуса задачи.
описание метода getStatusTask:
public static function getStatusTask($status)
{
switch ($status) {
case '1':
return 'Выполняется';
break;
case '2':
return 'Выполнено';
break;
case '3':
return 'Провалено';
break;
}
}
javascript:
<script>
$(document).ready(function(){
//задача выполнена
$(".change-status-complete").click(function () {
var id = $(this).attr("data-id");
$.post("/admin/task/setCompleted/"+id, {}, function (data) {
$("#status-task").html(data);
});
return false;
});
//задача провалена
$(".change-status-failed").click(function () {
var id = $(this).attr("data-id");
$.post("/admin/task/setFailed/"+id, {}, function (data) {
$("#status-task").html(data);
});
return false;
});
});
</script>
При нажатии на ссылки текст статуса пропадает и span делается пустым, а нужно, чтобы
менялся текст статуса без перезагрузки. Возможно ли так сделать в моем случае?Если да,то куда дальше копать?
Заранее спасибо.