Pergunta

Eu gostaria de pedir a sua opinião sobre este assunto. Esta é uma questão teórica.

Eu estou em uma situação onde eu tenho uma interface mostrada para um usuário que usa AJAX para conversar com o servidor. A linguagem do lado do servidor não importa aqui. Eu tenho um formulário com campos e cada um deles são deletable. Se o usuário selecionar algumas -checkboxes "Excluir" e prensas Update, então eu tenho essas duas opções para fazer:

Opção 1: Quando a supressão dos campos, use JavaScript para remover o HTML imediatamente e executar AJAX no fundo para excluir esses campos. Isto consegue um olhar de uma interface rápida -> melhor experiência de usuário. No entanto, se a chamada AJAX falhar no lado do servidor (os campos não pode ser excluído), então os campos HTML excluídos anteriormente daria uma suposição falsa para o usuário (um deles sendo excluído).

Opção 2: Quando a supressão dos campos, executar AJAX, dependendo o seu sucesso, remova o HTML ou não. Isto dá feedback preciso para o usuário, mas a forma iria congelar até que a chamada AJAX acabamentos = lento (er).

Quais são seus pensamentos? Que abordagem parece melhor para mim tomar ou devo fazê-lo uma opção?

Foi útil?

Solução

Opção 3: Mark os controles como sendo excluído (por exemplo, sobreposição de uma caixa cinza translúcido com um ícone de exclusão nele). Enviar o pedido. Quando ele retorna, remova os controles, ou mudar a caixa para mostrar um ícone de erro durante alguns segundos (em seguida, remover a caixa).

Permita que o resto da interface a ser interagiu com enquanto isso continua.

Outras dicas

questão Nice.

Uma terceira opção seria:

  1. desativar imediatamente os controles
  2. excluir -los quando os retornos do Ajax

Este dá informações ao utilizador que algo estava efetivamente solicitado (resposta), enquanto mostra também o momento em que é efetivamente concluído.


Além disso, o usuário de alguma forma se sente a "chamada distante", que não induzi-lo em erro, porque é foi realmente acontece. De qualquer forma, não há nada significativo que podemos fazer para esconder esse sentimento, porque o atraso será sempre lá.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top