Primefaces p:ajaxStatus для запросов без ajax

У меня есть некоторые запросы, которые не могут быть запросами ajax, есть ли способ по-прежнему использовать компонент p: ajaxStatus с запросами, отличными от ajax.


person c12    schedule 31.03.2011    source источник


Ответы (2)


Запросы без ajax полностью перезагружают всю страницу. Таким образом, вы не можете буквально использовать p:ajaxStatus, чтобы указать, что выполняется запрос без ajax.

Если ваш запрос приводит к навигации по страницам, то использование p:ajaxStatus нецелесообразно. В противном случае вы можете соединить запрос ajax с p:ajaxStatus.

Вскоре p:ajaxStatus нельзя использовать для отображения статуса запроса, отличного от ajax.

person Selvin    schedule 31.03.2011

Это немного поздно, но я сделал в основном то, о чем вы говорите. Цель состояла в том, чтобы отображать анимированный gif для запросов, отличных от ajax. Я использовал эту функцию, чтобы включить отображение ajaxStatus. Мой p: ajaxStatus имеет идентификатор «ajaxStatus»:

function startAjaxStatus() { 
  document.getElementById("ajaxStatus_start").style.display='block'; 
  document.getElementById("ajaxStatus_complete").style.display='none'; 
  document.getElementById("ajaxStatus_error").style.display='none'; 
  document.getElementById("ajaxStatus_default").style.display='none'; 
} 

Теперь вам просто нужно убедиться, что вы вызываете эту функцию перед запросом без ajax:

<p:commandButton ajax="false" onclick="startAjaxStatus()" ...
person JOTN    schedule 29.02.2012