yii ajaxbutton вызывает действия без ожидания результата ajax - PullRequest
1 голос
/ 14 января 2012

Я хочу реализовать функцию deletecomment на своем веб-сайте, но я не хочу, чтобы мои пользователи слишком ждали получения результата от сервера после выполнения запроса ajax, вместо этого я хочу вызвать какое-либо действие асинхронно вместе с запросом таким способом в случае, если если какой-либо сервер не работает или что-то еще, это покажет вам, что действие выполнено, но фактический результат можно просмотреть, обновив страницу, но пользователь не должен ждать ..

Мой ajaxButton:

$options=array(
            "type"=>"post",
            "data"=>array("comment_id"=>$comment->id),
                );
        echo CHtml::ajaxButton('Delete',CController::createUrl('deletecomment'),$options);

То, что я хочу сделать, это заставить комментарий div исчезнуть, чей идентификатор - комментарий _ {$ comment_id} ..

1 Ответ

2 голосов
/ 14 января 2012

Так как ajax - это асинхронный javascript и xml, он не будет ждать вашего результата и запускать другие действия, указанные, что вы можете сделать, это предоставить некоторое действие в массиве htmloptions как событие onclick и действие, как скрытие вашего блока ...

Этот код может работать ..

$options=array(
            "type"=>"post",
            "data"=>array("comment_id"=>$comment->id),
                );
        echo CHtml::ajaxButton('Delete',CController::createUrl('deletecomment'),$options,array("onclick"=>"$('#comment_".$comment->id."').hide()"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...