가변 폼 액션 접근성 확보하기
가변 폼 액션 상당히 많이쓰고있습니다.
필요에 따라 Form의 Action을 바꿔서 쓰는 방식인데 코드도 그리 복잡한건 아니라서
왠만한 브라우저에서는 호환됩니다만... 비스크립트 환경에선 접근성 확보가 어렵습니다.
이건 제가 쓰고있는 방법입니다.
비스크립트 환경 코딩에 관심있으신 분있으시다면 함 읽어보시길 바랍니다.
* 기존 방식
<script type="text/javascript">
function OnSubmitForm()
{
if(document.pressed == 'Insert')
{
document.myform.action ="insert.html";
}
else if(document.pressed == 'Update')
{
document.myform.action ="update.html";
}
return true;
}
</script>
<form name="myform" onsubmit="return onsubmitform();">
<input type="submit" name="operation" onclick="document.pressed=this.value" value="insert" />
<input type="submit" name="operation" onclick="document.pressed=this.value" value="update" />
</form>
- 자바스크립트로 action 값 임의 변경, 기능 변화 클라이언트(브라우저)에서 처리
* 접근성 향상 방식
<form id="form" method="post" action="url">
<div>
이 항목에
<select name="name">
<option>작업1</option>
<option>작업2</option>
<option>작업3</option>
</select>을 진행합니다. <noscript><input type="submit" value="확인" /></noscript>
</div>
</form>
- Action은 변화없고 자바스크립트에서 셀렉트 값 변경 후 submit 시킴, 기능 변화 서버에서 처리
- 이 경우 스크립트 사용시 셀렉트 박스는 스타일시트로 숨기는 등의 방법을 이용함.
이상 별거아닌 작은 팁이였습니다... ㅎㅎ;;
* 성원에 힘입어... 스크립트 하나 추가해드립니다.
선택자-스타일선택자(?)-display-none 의 방식으로 가면 됩니다.
- normal: getElementById('id').style.display = "none";
- jquery: $("selector").css("display", "none");
이런 식으로 스크립트 사용 시 스타일을 변경해서 안보이게하면 됩니다.
(스크립트 사용하지 않을 시 기본적으로 보이게 하기위함)
필요에 따라 Form의 Action을 바꿔서 쓰는 방식인데 코드도 그리 복잡한건 아니라서
왠만한 브라우저에서는 호환됩니다만... 비스크립트 환경에선 접근성 확보가 어렵습니다.
이건 제가 쓰고있는 방법입니다.
비스크립트 환경 코딩에 관심있으신 분있으시다면 함 읽어보시길 바랍니다.
* 기존 방식
<script type="text/javascript">
function OnSubmitForm()
{
if(document.pressed == 'Insert')
{
document.myform.action ="insert.html";
}
else if(document.pressed == 'Update')
{
document.myform.action ="update.html";
}
return true;
}
</script>
<form name="myform" onsubmit="return onsubmitform();">
<input type="submit" name="operation" onclick="document.pressed=this.value" value="insert" />
<input type="submit" name="operation" onclick="document.pressed=this.value" value="update" />
</form>
- 자바스크립트로 action 값 임의 변경, 기능 변화 클라이언트(브라우저)에서 처리
* 접근성 향상 방식
<form id="form" method="post" action="url">
<div>
이 항목에
<select name="name">
<option>작업1</option>
<option>작업2</option>
<option>작업3</option>
</select>을 진행합니다. <noscript><input type="submit" value="확인" /></noscript>
</div>
</form>
- Action은 변화없고 자바스크립트에서 셀렉트 값 변경 후 submit 시킴, 기능 변화 서버에서 처리
- 이 경우 스크립트 사용시 셀렉트 박스는 스타일시트로 숨기는 등의 방법을 이용함.
이상 별거아닌 작은 팁이였습니다... ㅎㅎ;;
* 성원에 힘입어... 스크립트 하나 추가해드립니다.
선택자-스타일선택자(?)-display-none 의 방식으로 가면 됩니다.
- normal: getElementById('id').style.display = "none";
- jquery: $("selector").css("display", "none");
이런 식으로 스크립트 사용 시 스타일을 변경해서 안보이게하면 됩니다.
(스크립트 사용하지 않을 시 기본적으로 보이게 하기위함)
댓글 1개
14년 전
짧게 작성돼서 그런데, 굉장히 중요한 글입니다. 추천x10
제 경우엔 select 쪽은 CSS가 아니라 JavaScript에서 숨겨줍니다. 그래야 JavaScript disable 환경에서도 단일 작업으로 고정되는 일을 피할 수 없으니까요.
제 경우엔 select 쪽은 CSS가 아니라 JavaScript에서 숨겨줍니다. 그래야 JavaScript disable 환경에서도 단일 작업으로 고정되는 일을 피할 수 없으니까요.
게시글 목록
| 번호 | 제목 |
|---|---|
| 26049 | |
| 2886 | |
| 14815 |
jQuery
[jQuery] 탭 메뉴
8
|
| 14808 |
jQuery
[jQuery] 상위부터 차례로 지역 선택하기
6
|
| 29814 |
HTML
Loading Panel Widget
|
| 14807 | |
| 2883 | |
| 2879 | |
| 2867 | |
| 2863 | |
| 14798 | |
| 14797 |
JavaScript
메모리 자동 반환 프로그램
|
| 2858 | |
| 14790 | |
| 2852 | |
| 14788 |
MySQL
원격지에 올리기..
1
|
| 14787 |
JavaScript
호스팅업을 하려고 하는데
|
| 2843 | |
| 2838 | |
| 14785 |
JavaScript
주문서에서..
1
|
| 14781 |
MySQL
쿼리문 실행시.
3
|
| 2834 | |
| 14780 | |
| 2830 | |
| 14779 |
기타
특정 url 접근제한
|
| 24227 | |
| 14778 | |
| 29812 |
HTML
도와 주세요
1
|
| 2818 | |
| 14773 | |
| 2815 | |
| 14772 | |
| 29811 | |
| 24214 | |
| 14767 |
PHP
나초보입니다
4
|
| 14762 |
jQuery
죄송하지만JQuery가 몬가요
4
|
| 14760 | |
| 14758 | |
| 24212 | |
| 26043 |
기획서
개발일정 간트차트
5
|
| 14757 |
JavaScript
[유용한팁]Kisa OpenAPI Whois 정보 (XML) 데이터 파싱하기
|
| 2807 | |
| 2791 | |
| 2783 | |
| 14755 |
JavaScript
스크립트좀짜주세용 ^___^
1
|
| 14753 |
MySQL
Mysql Error Num : 1045
1
|
| 2774 | |
| 2767 | |
| 14749 |
jQuery
selector 연습장
3
|
| 2756 | |
| 2751 | |
| 2750 | |
| 14748 |
정규표현식
정규표현식 샘플등 연습장(Air 웹기반)
|
| 14747 | |
| 29809 | |
| 29808 | |
| 29807 | |
| 14746 |
JavaScript
[유용한팁][콤보박스]자바스크립트로 콤보박스에 항목 동적으로 추가하기
|
| 29806 | |
| 29804 | |
| 29802 |
HTML
툴바 프로그램개발할때....
1
|
| 2740 | |
| 2732 | |
| 14745 | |
| 26037 | |
| 26031 |
계약서
사이트 계약서-별첨
5
|
| 2726 | |
| 29797 |
HTML
코드 잘 모르는 이가 질문
4
|
| 2724 | |
| 2712 | |
| 2692 | |
| 14742 |
JavaScript
문자열 자르기 질문드립니다.
2
|
| 14741 |
MySQL
MySQL PHP API Functions
|
| 14740 | |
| 14739 |
기타
Apache C API
|
| 14737 |
jQuery
jQuery 1.6.4 lib
1
|
| 29795 | |
| 2687 | |
| 14732 | |
| 26025 | |
| 14730 |
Flash
자바 관련 사이트 모음 입니다.
1
|
| 26020 | |
| 26017 | |
| 14729 | |
| 14723 |
jQuery
[질문] ie7의 웹페이지 로딩(렌더링)문제.
5
|
| 14722 |
jQuery
문의하나드립니다ㅠㅠ
|
| 2680 | |
| 26009 |
계약서
사이트 제작 계약서
7
|
| 24211 | |
| 14721 | |
| 2677 | |
| 14720 | |
| 14715 | |
| 2660 | |
| 14711 | |
| 14704 | |
| 2657 | |
| 2653 | |
| 14703 |
MySQL
서버 APM정보
|
| 14701 |
JavaScript
가격뽑기 및 질문 ㅎㅎ
1
|
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기