Я создаю некоторые функции, при которых при отправке формы отображается сообщение об успешном завершении, а обновленные данные извлекаются и отображаются на странице через AJAX.Возврат данных и сообщение об успешном запуске/ошибке через AJAX
Контроллер:
public function updateAction()
{
$query="my query"
if(mysql_query($query))
{
echo "Your changes have been saved successfully";
$customer=Customer::getDetails($_POST['cust_id']);
include('application/view/admin/customer/_view.php');
}
else
{
echo "There was a problem saving your changes";
}
}
Вид:
$('#update-customer-form').submit(function(){
$.ajax({
url: 'admin/customer/update',
type: 'POST',
data: $(this).serialize(),
success: function(result){
alert(result);
$('#details').html(result);
}
});
return false;
});
То, что я хочу сделать, это передать сообщение об успехе, а также вывод HTML из файла _view.php, если запись будет сохранена успешно. В противном случае отображается только сообщение об ошибке. Как я могу это сделать?
EDIT: Есть ли способ сделать это, кроме использования json_encode()? Проблема, с которой я сталкиваюсь, включает файл PHP в json_encode().
Что он делает прямо сейчас? ваш код jQuery выглядит неплохо, за исключением того, что вам не нужен обратный вызов ошибки. 'error: function (...) {...}' –
На данный момент предупреждение выводит вывод HTML. – GSTAR
, а затем после предупреждения html добавляется к элементу '# details'? –