2012-12-17 2 views
1

Zendesk Lotus에서 조건부 필드 앱을 만들기 위해 일부 JavaScript 코드를 구성하려고합니다. 아래는 javascipt 템플릿과 현재 HTML입니다. 누군가 내게 내 HTML에 맞게 자바 템플릿을 어떻게 바꿀 것인지 예를 들어 줄 수 있습니까? 첫 번째 드롭 다운 목록 (ticket_fields_21013678)에서 'qa'옵션을 선택하면 두 번째 드롭 다운 양식 필드 (ticket_fields_21552756) 만 표시하고 싶습니다. 어떤 사람이 나에게 어떻게해야하는지 알려주면 나머지는 직접 할 수 있습니다 :)Javascript 조건부 필드 (Zendesk Lotus)

아래의 자바 스크립트는 아래 형식에 머물러 있어야합니다.

미리 도움을 청하십시오!

자바 스크립트 :

(function(){ 
    var projectRequest = ['280865'], 
     otherHelpesk = ['279466'], 
     hideAll = [].concat(projectRequest, otherHelpesk), 
     moodFieldMap = { 
     cat:[].concat(projectRequest), 
     dog:[].concat(otherHelpesk), 
     dolphin: [].concat(projectRequest, otherHelpesk) 
     }; 

    return { 
    appID: 'https://github.com/zendesk/widgets/tree/master/ConditionalFieldsApp', 
    defaultState: 'loading', 
    type2thing: '', 

    events: { 
     'app.activated': 'setValue', 
     'ticket.custom_field_21631456.changed': 'typeII' 
    }, //end events 

    typeII: function(){ 
     this.hide(hideAll); 
     this.type2thing = this.ticket().customField('custom_field_21631456'); 
     //console.log('control field value: ' + this.type2thing); 
     if (this.type2thing != null) { 
     this.show(moodFieldMap[this.type2thing]); 
     } 
    }, 

    setValue: function() { 
     //console.log('activated', arguments); 
     this.typeII(); 
    }, 

    hide: function(fields){ 
     fields.forEach(function(field) { 
     this.ticketFields('custom_field_' + field).hide(); 
     }, this); 
    }, 

    show: function(fields) { 
     fields.forEach(function(field) { 
     this.ticketFields('custom_field_' + field).show(); 
     }, this); 
    } 
    }; 
}()); 

내 HTML : 나는 최근에 몇 가지 정리를했다

<select id="ticket_fields_21013678" name="ticket[fields][21013678]" tabindex="8"><option value="">-</option> 
<option value="depreqaccount_management">Account Management</option> 
<option value="ce_vp">CE/VP</option> 
<option value="city_management">City Management</option> 
<option value="city_planning">City Planning</option> 
<option value="customer_service">Customer Service</option> 
<option value="depreq_images">Images</option> 
<option value="partner_management">Partner Management</option> 
<option value="production">Production</option> 
<option value="qa">QA</option> 
<option value="senior_management">Senior Management</option> 
<option value="depreq_writers">Writers</option> 
<option value="depreq_bdm">BDM</option></select> 

<select id="ticket_fields_21552756" name="ticket[fields][21552756]" tabindex="9"><option value="">-</option> 
<option value="responsibility_account_manager">Account Manager</option> 
<option value="responsibility_bdm">BDM</option> 
<option value="responsibility_ce_vp">CE/VP</option> 
<option value="responsibility_city_manager">City Manager</option> 
<option value="responsibility_city_planner">City Planner</option> 
<option value="responsibility_customer_service">Customer Service</option> 
<option value="responsibility_image_designer">Images</option> 
<option value="responsibility_merchant">Merchant</option> 
<option value="responsibility_partner_manager">Partner Manager</option> 
<option value="responsibility_producer">Producer</option> 
<option value="responsibility_qa">QA</option> 
<option value="responsibility_writer">Writer</option></select> 
+0

에서 새로운 젠 데스크 에이전트 인터페이스의 최신 버전을 볼 수 있습니다 예제 조건부 필드 app. 특히 다음 행을 확인하십시오. https://github.com/skipjac/Zendesk-Apps/blob/master/ConditionalFieldsApp/app.js#L26. 그게 도움이 되니? –

답변

1
+0

최신 버전이 https://github.com/skipjac/Zendesk-Apps/tree/master/ConditionalFieldsApp –

+0

으로 이동되었습니다. helpcenter를 사용하는 경우 조건부 필드가 여전히있을 수 있습니다. https://github.com/skipjac/Zendesk- Apps/트리/마스터/조건부 필드 도움말 센터 –