문제

나는 이것에 대해 당신의 의견을 묻고 싶습니다. 이것은 이론적 인 질문입니다.

AJAX를 사용하여 서버와 대화하는 사용자에게 인터페이스가 표시되는 상황에 처해 있습니다. 서버 측 언어는 여기서 중요하지 않습니다. 필드가있는 양식이 있으며 각각은 삭제할 수 있습니다. 사용자가 몇 개의 "삭제" -체크 박스를 선택하고 업데이트를 누르면이 두 가지 옵션이 있습니다.

옵션 1 : 필드를 삭제할 때 JavaScript를 사용하여 즉시 HTML을 제거하고 배경에서 Ajax를 실행하여 해당 필드를 삭제하십시오. 이로 인해 빠른 인터페이스 -> 더 나은 사용자 경험이 있습니다. 그러나 AJAX 호출이 서버 측에서 실패하면 (필드를 삭제할 수 없음), 이전에 삭제 된 HTML 필드는 사용자에게 잘못된 가정을 제공합니다 (삭제 된).

옵션 2 : 필드를 삭제할 때 성공에 따라 ajax를 실행하거나 HTML을 제거하거나 그렇지 않습니다. 이렇게하면 사용자에게 정확한 피드백이 제공되지만 Ajax 호출이 느린 (ER)가 완료 될 때까지 양식이 정지됩니다.

당신의 생각은 무엇입니까? 어떤 접근법이 내가 선택하는 것이 더 좋을까요, 아니면 선택을해야합니까?

도움이 되었습니까?

해결책

옵션 3 : 컨트롤이 삭제되는 것으로 표시합니다 (예 : 삭제 아이콘이있는 반투명 회색 상자를 오버레이). 요청을 보내십시오. 반환되면 컨트롤을 제거하거나 상자를 변경하여 몇 초 동안 오류 아이콘을 표시합니다 (상자를 제거).

나머지 인터페이스를 진행하는 동안 상호 작용할 수 있습니다.

다른 팁

좋은 질문.

세 번째 옵션은 다음과 같습니다.

  1. 즉시 비활성화하십시오 컨트롤
  2. 삭제 Ajax가 돌아올 때

이를 통해 사용자 피드백은 효과적으로 요청 된 (응답 성)를 제공하는 동시에 효과적으로 완료된 순간을 보여줍니다.


또한 사용자는 어떻게 든 "먼 콜"을 느낍니다. 이는 실제로 발생했기 때문에 오류가 발생하지 않습니다. 어쨌든, 우리 가이 느낌을 숨기기 위해 우리가 할 수있는 의미는 없습니다. 지연은 항상 존재하기 때문입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top