2009-10-22 5 views
0

현재 Lotus Notes 솔루션에서 작업 중입니다. 우리는 클라이언트 측 작업이 자바 스크립트를 통해 수행되도록 웹 양식을 사용하고 있습니다.Lotus Notes : Javascript를 통해 Radiogroup 재설정

내가 원하는 것은 라디오 버튼 그룹을 재설정하는 것입니다. 3 가지 가능성이 있으며 아무 것도 선택하고 싶지 않습니다.

//Unchecks a single group of Radio Buttons 
//groupname - the name attribute of the group which selection needs to be unchecked 
function clearRadioButtonGroup(groupName) { 
    for(i=0;i<document.forms[0].elements[groupName].length;i++) { 
        document.forms[0].elements[groupName][i].checked = false; 
      } 
} 
이 루틴의 문제가

의을 radioGroup 리셋을 얻을 수 있지만 :

내가 현재 사용 (가능성 A '그들 중 누구도'나는 알고 있지만 우리는 그들을 다시 설정해야합니다 바람직하지 않을 것이다) 양식을 제출하면 이전 값이 제출됩니다. 어떤 제안?

답변

1

문제는 라디오 버튼을 만들 삭제 그들에 대한 정보가 제출 된 폼 데이터에 표시 없다는 것입니다, 및 Domino 필드이 아닌 필드 명확 로 변화를 그 해석하지 보인다.

내가 정말 좋아이 어떤 해결책을 발견하지 않은,하지만 난 두 가지 옵션을 생각할 수 있습니다 :

  1. 변경 라디오 버튼이 선택의 여지가 옵션을 포함 할 수 있습니다.

    • 이 플래그로 사용하는 CSS로 웹 브라우저에서 그것을 숨기기 위해 폼에 편집 가능한 필드를 추가 :

대안은 비트 clumpsy입니다.

  • clearRadioButtonGroup도 플래그 필드를 설정했습니다.
  • 라디오 버튼의 onChange 이벤트가 플래그 필드를 지우도록하십시오.
  • WebQueryOpen 에이전트의 경우 플래그 필드가 비어 있지 않으면 라디오 버튼 필드를 비어있게 설정하십시오.
  • 또 다른 대안가 될 수는 선택의 여지가 옵션을 숨기기 위해 일부 영리한 자바 스크립트/CSS를 트릭을 사용하고, 단순히 그 선택을 설정 clearRadioButtonGroup을했다.

    +0

    지금 제출할 때 에이전트를 사용하여 라디오 그룹을 지우는 것은 매력과 같습니다 : – leen

    1

    이전 값이 실제로 제출 되었습니까? 편집중인 NotesDocument에서 업데이트 (지워짐)되지 않았습니까? 그냥 직 ...

    BTW에서는 HTTP POST를 검사 할 수있는 Fiddler라는 프로그램을 다운로드 할 수 있으며 POST 데이터에 해당 라디오 버튼 그룹에 대한 값이 없음을 확인할 수 있습니다. 그것은 문제의 범위를 좁히는 데 도움이 될 수 있습니다.

    +0

    이것은 또한 문제 일 수 있습니다. 문서에서 값을 지우고 싶습니다. 그렇다면 어떻게 자바 스크립트 호출을 변경하여 문서에서 데이터를 지울 수 있습니까? 내일 피들러를 시험해 볼 것입니다, 감사합니다! – leen

    +0

    그래서 마침내 그것을 시험해 볼 시간이있었습니다. 라디오 필드를 지운 후에 이전 값이 다시 POST됩니다. – leen

    2

    사용중인 Domino 버전은 무엇입니까? 7.x부터 (나는 생각하기에) %% Surrogate 필드는 HTML에서 숨길 수있는 필드로 생성되어 재설정 할 수 있으므로 모든 라디오 버튼 옵션의 선택을 해제 한 후에 %% Surrogate를 지울 수 있습니다 "None of the above"옵션을 선택하지 않아도됩니다.

    <input type="hidden" name="FieldName" id="FieldID" value=""> 
    

    (필드 이름과 fieldID가 양식에 이름과 라디오 필드의 ID입니다)

    을 :

    매트

    +0

    우리는 Domino 8을 사용하고 있습니다. 그래서 지금 제 제안을 시도하고 있습니다. 감사합니다! – leen

    +0

    mh, 당신은 너무 친절하고 대리 필드를 재설정하는 방법의 예를 게시 할 수 있습니까? 웹을 검색하여 http://www.codestore.net/store.nsf/unid/BLOG-20060609/을 발견했습니다. 대리 필드의 값을 인쇄하려면 작동하지만 파이어 폭스 (필드는 정의되지 않음)에서 변경하지 마십시오. 감사합니다! 질문의 표현을 바꾸 겠어. – leen

    1

    양식에 HTML 코드를 통해 다음과 같은 패스를 넣어 Javascript를 통해 라디오를 재설정하고 문서를 제출하면 입력란이 비어있게됩니다.

    관련 문제