2011-02-15 2 views
1

Dojo 양식에 Dojo 별 등급 위젯 (dojox.form.Rating)이 포함되어 있지만 제출하면 나타나지 않습니다.dojox.form.Rating이 포스트 데이터에 나타나지 않습니다.

<div dojoType="dojox.form.Rating" numStars="5" id="field_3177" value="3"></div> 

문서에 이름 속성을 추가하는 것에 대한 언급이 없지만 문서를 추가해도 이름이 도움이되지 않습니다. 방화범의 렌더링 된 HTML을 검토

<div dojoType="dojox.form.Rating" name="field_3177" numStars="5" id="field_3177" value="3"></div> 

, 숨겨진 입력 필드에 이름 속성이없는 것 - 그것은 게시 된 데이터에 나타나지 않는 이유를 설명 할 수있다.

<input type="hidden" dojoattachpoint="focusNode" value="3" id="field_3177" tabindex="0"> 

제출하기 전에해야 할 일이 있습니까?

+0

이름 속성을 갖기 위해 숨겨진 입력을 패치하는 원숭이가이를 해결했습니다. 그러나 분명히 그것이 올바른 방법 일 수는 없습니다. 그럴 수있어? – voidstate

+0

이는 고정 원숭이 패치 : 함수 (ID) \t \t \t { \t \t \t \t \t \t \t \t dojo.attr (ID, '이름', ID); \t \t} – voidstate

답변

2

, 즉

<div dojoType="dojox.form.Rating" numStars="5" id="field_3177" name="field_3177" value="3"></div> 

이 도장에 특별한 것이 없다. 서버에 다시 제출하려면 모든 입력 요소의 이름이 있어야합니다 (참조).

업데이트 : 죄송합니다. 이미 이름 매개 변수를 추가하려하지 않았습니다. 나는 이것이 폼이나 (더 높은) 등급 위젯의 버그라고 주장 할 것이다. dijit.form.Form.getValues ​​()를 사용하여 XHR을 통해 양식을 제출하는 경우 이름이있는 경우 등급 위젯이 포함됩니다. 그러나 네이티브 양식을 사용하면 제출하지 않습니다.

나는 hhttp : //telliott.net/dojoExamples/dojo-ratingInFormExample.html에서 테스트 케이스를 만들었습니다. getValues ​​()가 반환 한 값을 반복하고 사용자가 직접 쿼리 문자열을 작성하여 비 XHR 양식 제출을 위해이 함수를 사용할 수 있습니다. 이상적이지 않습니다. 상위 레벨 노드가 아닌 입력 노드에 이름 속성을 배치하기 위해 등급 템플릿을 업데이트해야한다고 생각합니다.

+0

내가 게시 한 코드의 두 번째 스 니펫을 참조하십시오. "이 설명서에는 이름 속성을 추가하는 것에 대해서는 언급되어 있지 않지만 문서를 추가한다고해도 도움이되지 않습니다." – voidstate

+0

업데이트를 참조하십시오. – mrtom

0

바보 질문 :

당신이 dojo.require에게 ("dojox.form.Rating")을 추가 한; 코드에?

희망이 있으면 도움이됩니다.

// 다니엘

그냥 위젯에 이름을 추가 할 필요가
관련 문제