2010-03-08 4 views
0

클릭 할 때 세부 정보를 저장하기 위해 서버에 양식을 제출하는 확인란이 있습니다. 폼이 제출 된 후에는 div가 업데이트되었다고 표시되지만 체크 박스는 체크되지 않는다는 점을 제외하고는 모두 잘 작동합니다. 페이지는 물론 새로 고쳐지지 않으며 페이지를 새로 고칠 때마다 체크됩니다.기능을 실행 중일 때 체크 박스가 선택되지 않음

나는 jQuery를 사용함에 따라 상자를 직접 체크 할 수있을 것이라고 생각했지만 동적 이름을 가진 많은 체크 박스를 가지고있어서 어떻게 호출 할 지 잘 모르겠습니다. 나는 다음과 같이 생각했다 :

$('input[name=("favourite" + id)]').attr('checked', true); 

작동하지만 운 없음. 확인란에 체크 표시를하지 않으면 확인란이 정상적으로 작동합니다.

도움이 될만한 자료를 보내 주셔서 감사합니다.

+0

모든 세부 사항을 제공하지 않았으므로 Door Number 2에 걸고 필드의 ID/이름에 오타가 있다고 생각합니다. 어쩌면 '_'대신 '-'와 같은 간단한 것일 수도 있습니다. 항상 나에게 일어난다. –

+0

방금 ​​확인한 것과 비슷한 document.getElementsByName ("favorite"+ id)을 사용하여 확인란의 값을 검색하므로 생각하지 않습니다. 원하는 경우 더 많은 코드를 게시 할 수 있지만 사람들을 혼동시키는 것 이외의 다른 작업은 수행하지 않을 것이라고 생각합니다. 어떻게 든 게시 된 라인을 수정하여 해결할 수 있다고 생각합니다. 나는 $ ('msg'+ id) .html ("Submitted") 바로 아래에서이 작업을 수행하고있다. – Rudiger

답변

1

당신은 당신의 선택에 id 변수의 값을 소개하기 위해 귀하의 문자열을 중단해야합니다, 당신은 이런 식으로 작업을 수행 할 수 있습니다

$('input[name="favourite' + id + '"]').attr('checked', true); 
+0

네, 고마워요. 나는 거의 자바 스크립트를 사용하지 않는다. ( – Rudiger

1

대신

$('input[name=("favourite" + id)]').checked = true; 

을 수행하십시오.

속성 설정이 브라우저에서 DOM 속성을 변경하는 것으로 자동 해석되지 않을 수 있습니다. 다소 혼란 스럽지만 Firefox와 같은 브라우저에서는 HTML 속성과 DOM 속성이 별도로 저장되지만 대부분은 동일하게 이름이 지정됩니다 (예 : class 속성이 className 속성으로 표시됨).

속성 변경은 요소의 동작에 영향을 미치지 만 속성은 항상 동일한 효과를 내지는 않지만 일부 브라우저에서는 초기 렌더링 중에 만 구문 분석됩니다.

+0

또한 $ ('input [name = ("favorite"+ id)].) attr ('checked ','checked '); 문자열.하지만 위의 방법을보다 일관되게 작동했습니다. – Josiah

+0

시도, 작동하지 않았다 : ( – Rudiger

관련 문제