2017-12-15 3 views
2

SAP에서 이벤트 처리를 제어합니다.사용자 내가 3 상태 전환을 만들려는 내가 테이블이 테이블의 각 행에서 이러한 스위치가 존재해야합니다 전환 <a href="http://jsfiddle.net/darkajax/MbR6c/" rel="nofollow noreferrer">http://jsfiddle.net/darkajax/MbR6c/</a></p> <p>에서 하나와 유사한 전환 내 SAP UI5 응용 프로그램에서 UI5

내가 할 가장 좋은 방법은 사용자 지정 컨트롤을 만들고 렌더링하는 것입니다. 그것은 잘 작동합니다. 그러나 토글 스위치 상태 중 하나를 클릭하면 부모 컨트롤러를 호출하고 싶습니다. 나는 사용자 정의 컨트롤의 이벤트를 호출 할 수 없습니다입니다 :

function(Control, Button) { 
    return Control.extend("svm.customControl.toggleSwitch", { 
     metadata: { 
      properties: { 
       A: { 
        type: "String" 
       }, 
       B: { 
        type: "String" 
       }, 
       C: { 
        type: "String" 
       } 
      }, 
      aggregations: {}, 
      events: { 
       changes: { 
        enablePreventDefault: true 
       } 
      } 
     }, 
renderer: function(oRm, oControl) { 
    oRm.write(
    '<div class="switch-toggle switch-3 switch-candy"> 
     <input id=' + oControl.getA() + ' name="state_' + 
      oControl.getA() + '" type="radio" 
        onclick='oControl.fireChanges +'> 
       <label for=' + oControl.getNone() + '>None</label> 
     <input id=' + oControl.getB() +' name="state_' + 
       oControl.getB() + '" type="radio"> <label for=' + 
        oControl.getB() + 
        ' onclick="">Viewer</label>>/div><div> 
     <input id=' + oControl.getC() + ' name="state_' + oControl.getA() + 
        '" type="radio"> <label for=' + oControl.getC() + ' onclick="">Owner</label> <a></a></div>' 
       ); 

      }, 

내가 위의 렌더러보기 위하여 좋은 아니라는 것을 알고,하지만 위의 혼란에서 중요한 비트는 다음과 같습니다

<input id=' + oControl.getA() + ' name="state_' + 
      oControl.getA() + '" type="radio" 
        onclick='oControl.fireChanges +'> 

나는 그 행사에 전화하기를 원하지만 그것을 부르지 않는다. 오류를 받고 :

(function(event){function })

그냥 궁금

이벤트를 호출하는 방법이 :

Uncaught SyntaxError: Unexpected token }

및 오류의 라인을 검사에

?

답변

1

사용자 지정 컨트롤을 만드는 이유는 무엇입니까? sap.m.SegmentedButton의 문제점은 무엇입니까?

+0

감사합니다. A.vh. 솔직하게 말해서, 나는 SAP UI5에있는 컨트롤을 보지 못했고 이와 같은 것이 존재하지 않는다고 가정했습니다. 나는 그것이 잘 맞는 segementedButton을 사용할 것이다. 그러나 옆의 말처럼 나는 놀고 있었고 위의 사건은 해고 당했다. 렌더링 후 onclick을 바인딩 한 다음 jquery를 사용하여 이벤트를 호출했습니다. –

관련 문제