애니빌드.LAB
토론방
소스관련 프로그램 소스 상의 style class 추가 방법 문의
- 최**민
- 2014-05-30 09:52:48
- hit3798
- http://lab.anybuild.co.kr/bbs/qna/2795
회원가입 폼 작성 시 정보입력 관련 소스에 보면
프로그램 소스 가운데 "<input type='text' name='name' id='name' size='20' maxlength='20' />"
{$v2[value]} 값으로 처리되는데~ " class='txt' " 를 추가할려면 어떻게 처리해야 되나요??
<tr loop="$v[fields] as $k2=>$v2">
<th scope="row"><label for="{$v2[id]}">{$v2[name]}</label></th>
<td>{$v2[value]}</td>
</tr>
게시글 공유
URL복사
댓글작성
열기 닫기
열기 닫기
이건 상당히 조심스러운 부분입니다.
str_replace를 이용을 해서 강제로 값을 밀어 넣는 식으로 처리를 해야되는데..이 작업을 하시고 나서 반드시 테스트를 해주시기 바랍니다.
str_replace의 경우는 모든 문자열을 치환하는 부분입니다. 그럼 $v2[value] 값에 들어가는 모든 내역들을 치환을 합니다.
특정한 값들만 처리를 할려면 다른 명령어를 써서 구분을 지어야지만 처리가 가능합니다.
일단 모든내역에 class값을 추가하는 부분을 아래부분에 설명을 해드리도록 하겠습니다.
<tr loop="$v[fields] as $k2=>$v2">
{@
$fld_value = str_replace("/>","class='txt' />",$v2[value]);
@}
<th scope="row"><label for="{$v2[id]}">{$v2[name]}</label></th>
<td>{$fld_value}</td>
</tr>
변경되는 부분을 빨간색으로 표시를 해 놓았습니다.
value값을 str_replace를 통해서 일괄적으로 class값을 밀어 넣도록 처리를 하는겁니다.
그 조건인부분이 />부분인데요 이 부분이 들어있는 모든 내역을 class='txt' />로 변경을 하도록 처리를 하는거라
일단은 클레스명이 기재가 되긴합니다. 다만, $v2[value]값 모든 내역을 다 처리를 하는거라 한번 내용을 보시고 판단을 하시는게 좋을것 같습니다.
감사합니다.