자바스크립트가 작동하지 않을 때 form의 필드 체크는 어떻게 할까?
요즘 이런 것만 생각하고 있는 것 같다. 확실한 답이나 가이드라인이 있다면 좋겠지만 어쩜 지금 하는 것이
처음이 아닐까 싶은.. 그런 생각도 가끔 드는 요즘이다. 머리가 지끈지끈 아픈 그런 나날이 계속 되고 있다.
브라우저에서 자바스크립트가 작동하지 않을 때 form의 input 필드등의 값이 올바른지 체크는 어떻게 하면
좋을까? 이 물음이 여전히 머리 속에서 떠나지 않는다. 자바스크립트가 작동하지 않으면 alert() 함수를 쓸 수
없기 때문에 오류 등의 체크는 서버단에서 할 수 밖에 없다. 보통은 자바스크립트로 체크를 하고 서버단에서도
체크를 하도록 구성을 하는데.. 서버단에서만 오류체크를 했을 경우 오류가 있어 이전 페이지로 돌아갈 때
POST로 넘긴 값이 사라진다는 문제가 있다. 입력필드가 하나정도라면 문제가 될 정도는 아닐텐데.. 많다면??
생각만 해도 짜증이 난다. 근데 자바스크립트가 작동하지 않은 환경이 적지만 있다고 하니 넘길 수도 없는 일!!
<noscript>
<form method=”post” action=”<?=$url?>”>
<?
foreach($_POST as $key => $value) {
?>
<input type=”hidden” name=”<?=$key?>” value=”<?=$value?>” />
<?
}
?>
<input type=”submit” value=”돌아가기” />
</form></noscript>
오늘 퇴근길 지하철에 떠오른 코드이다. 이론적으로는 가능할 것 같은데.. 실제로는 어떨지 모르겠다. 아마도
내일 출근하면 바로 테스트를 해봐야할 것 같다. 근데 또 드는 생각이 이렇게까지 해야하나 싶은.. 있으면 좋은
방법이지만 만약 다른 사람들이 솔루션을 가져다 커스터마이징등의 작업을 하게 되면 분명 귀찮은 작업이다.
그건 걸 알면서도 이런 코드를 추가해야하는지.. 솔직히 꼭 필요하다고 자신있게 말할 수는 없다. 정말 모르겠다.
위 방법은 정답이라고 할 수는 없을 것 같고.. 그냥 이런 식으로 가능하지 않을까 하는 코드이다.