2009-10-15 2 views
0

Zend_Form에 요소 이름 대신 ID 값 (예 : ID 레이블 등)을 사용하여 다른 ID 값을 사용하도록하려면 어떻게해야합니까?다양한 형태의 페이지에서 중복 된 Zend_Form 요소 ID

페이지에 여러 개의 양식이 있습니다. 그들 중 일부는 반복되는 이름을 가지고 있습니다. 따라서 Zend_Form은 이름을 사용하여 요소의 ID를 생성하므로 동일한 ID를 가진 여러 요소로 끝나기 때문에 내 (X) HTML 문서가 유효하지 않게됩니다.

동일한 요소 이름을 사용해야한다는 점을 감안할 때 가장 좋은 해결책은 무엇입니까? (모든 양식에 공통적 인 해시이며 Zend_Form 해시 요소를 사용하는 것은 실제로 문제가되지 않습니다.)

답변

0

감사합니다. Chris Gutierrez.

그러나, 내가 말했듯이, 나는 기본 장식자를 타고 -label과 같은 ID를 생성해야했습니다. 그러나 $ element-> setAttribs()는 불가능합니다.

따라서 http://framework.zend.com/issues/browse/ZF-7125을 기반으로 다음과 같이했습니다. $ element-> clearDecorators(); $ element-> setAttrib ('id', 'some_id'); $ element-> addDecorator ("ViewHelper");

누구나 볼 수 있습니다. 필요한만큼 충분했음을 유의하십시오. 그러나 당신을 위해 없을 수도 있습니다 (기본 설정은 viewHelper 데코레이터 이상입니다).

0

Zend_Form_Element에는 배열을 취하는 setAttribs라는 메서드가 있습니다. $element->setAttribs(array('id' => "some_id"));

과 같이 할 수도 있고 $ element-> setAttrib ('id', 'some_id') 할 수도 있습니다.