2011-08-29 6 views

답변

3
나는 당신이 듣고, 그러나 당신이이 일 무슨 알고 가정하고 어떤 이벤트 귀하의 코멘트에 의해 말할 수

, 바로 얻을 수 document.getElementById를() 또는 jQuery를에 선택기를 사용 입력 필드 Apex : inputField를 사용하는 경우 'theField'와 같은 형식으로 id 속성을 정의하십시오. 페이지가 렌더링 될 때 Salesforce는 'j_id0 : j_id1 : theField'와 같은 id 속성을 실제 태그에 제공해야하지만 이는 페이지를 볼 때마다 다를 수 있습니다. 즉, 하위 문자열을 사용하여 입력을 선택해야합니다. 다음은 jQuery를 사용하는 샘플 코드입니다 (비효율적 인 경우 jq 전문가에게 사과하십시오. 개선의 여지가 있습니다).

<apex:page> 
    <apex:includeScript value="{!$Resource.jquery_1_6_1}"/> 
    <script> 
     jQuery.noConflict(); 
     jQuery(document).ready(function() { 
      jQuery('input[id*="theInput"]').val('Hello World'); 
     }); 
    </script> 
    <apex:form > 
     <apex:inputText value="{!phonenum}" id="theInput"/> 
    </apex:form> 
</apex:page> 
+0

특히 "jQuery"가 사용 가능한 경우 "querySelectorAll"을 사용할 수 있으므로 "입력 # theInput"을 선택기로 사용할 수 있습니다. 아니면 에이펙스가 이드를 감쌌습니까? –

+0

렌더링 할 때 모든 VF 태그에 래핑 된 ID가있는 것은 아니지만 Apex : inputText가 렌더링합니다. 위의 코드에서와 같이 하위 문자열로 가져 오는 '포함'유형의 선택기가 여전히 필요합니다. 그래서 당신은 당신의 이드를 독특하게 만들어야 할 것입니다! – Aaron

+0

그래, 선택기가 괜찮습니다. 그래도''.val ('Hello World')''를 사용할 수 있습니다 :) –