다음 목표에 따라 연결 메뉴를 구현합니다.
1. "익명 그룹"을 클릭하면 자동으로 다음으로 이동합니다: 회원 유형 "비공개 그룹", 접근 제어 "그룹 회원"
2. "공개 그룹"을 클릭하면 자동으로 다음으로 이동합니다: 회원 유형 "실명 그룹"
아래와 같이:
먼저 jquery 라이브러리를 사용하여 라디오를 클릭하는 이벤트를 가져옵니다. 이벤트를 가져온 후 어떤 라디오인지 판단하여 연결 변환을 수행합니다.
발생한 문제에는 IE 및 Firefox 이벤트와의 호환성과 선택에서 옵션의 선택된 속성 설정이 포함됩니다.
IE 및 Firefox와 호환되며 var ie=document.all;var nn6=document.getElementById&&!document.all;을 사용합니다.
select에서 옵션의 selected 속성을 설정하려면 var t=document.getElementsByName("select1")[0][1]; t.setAttribute("selected","selected");
selected 속성을 설정할 때 일반적으로 document.getElementsByName("select1").options가 사용되지만 Firefox에서는 정의되지 않은 것으로 보고됩니다. 그래서 순회 후 배열을 사용하여 해결했습니다.
목표 1을 달성하는 완전한 코드의 예:
조준 시 구현 목표 2에서 SetRadioCheck의 setAttribute가 작동하지 않는 것을 발견했습니다. 디버깅 후 이유를 알 수 없어서 obj .checked = true;를 변경했습니다.
함수 1 및 2 js 구현
// JavaScript 문서 - var ie=document.all
- var nn6=document.getElementById&&!document.all; (document).ready(function(){
- /*"익명 그룹"을 클릭하면 자동으로 다음으로 이동합니다. 회원 유형 "비공개 그룹", 액세스 제어 "그룹 회원"*/
- $(":radio") .click(function(e){
- var $name=(nn6?e.target.name:event.srcElement.name);
- if($name == "member_type")
- {
- if(1 == GetRadioValue($name))
- {
- SetRadioCheck("search_type",1)
- var t=document.getElementsByName("select1")[0][1]; 🎜>t.setAttribute("selected","selected");
- }
- }
- /*"공개 그룹"을 클릭하면 자동으로 다음으로 이동합니다. 회원 유형 "실명 그룹"*/
- if ($name == "search_type")
- {
- if(1 == GetRadioValue($name))
- {
- SetRadioCheck("member_type",0)
- }
- }
- });
- });
- /*확인된 라디오의 값을 가져옵니다.
- *RadioName: 라디오 값을 가져올 라디오 그룹의 이름
- */
- function GetRadioValue( RadioName){
- var obj;
- obj=document.getElementsByName(RadioName);
- if(obj!=null){
- var
- for(i= 0;i
- if(obj[i].checked){
- return obj[i].value;
- }
- }
- }
- return null;
- }
- /*선택된 속성 설정
- *RadioName: 속성을 수정할 라디오 그룹의 이름
- *i: 라디오의 i번째 요소가 선택됨
- */
- function SetRadioCheck(RadioName ,i){
- var obj;
- obj=document.getElementsByName(RadioName)
- //obj[i].setAttribute("checked","checked ");
- obj[i] .checked = true;
- }
-
- 코드 복사
SetRadioCheck에 대한 두 번째 호출
-
- if($name == "search_type")
- {
- if(1 == GetRadioValue($name))
- {
- SetRadioCheck("member_type",0);
- }
- }
- obj[i].setAttribute("checked","checked")가 잘못되었습니다. 조언을 부탁드립니다.
코드 복사
|