2016-10-28 2 views
0

<Input value="{binding}"/> 잘 작동합니다. 내가sap.m.Select 바인딩을 변경하는 방법?

<Select> <core:Item key="{key}" text="{binding}" /> <core:Item key="1" text="O530" /> <core:Item key="2" text="O531" /> </Select>

를 사용하는 경우

는하지만 그것은

<Select> <core:Item key="1" text="O530" /> <core:Item key="1" text="O530" /> <core:Item key="2" text="O531" /> </Select>

처럼 보여줍니다하지만 내가 원하는

<Select> <core:Item key="1" text="O530" /> (selected) <core:Item key="2" text="O531" /> </Select>

무엇 수오입니다

컨트롤러에서 을 사용했는데, {binding}을 얻는 방법을 모르겠습니다. 궁금

답변

0

는 왜 사용이 :

<Select> 
    <core:Item key="{key}" text="{binding}" /> <- This line of code? 
    <core:Item key="1" text="O530" /> 
    <core:Item key="2" text="O531" /> 
</Select> 

어쨌든, 이것은 내가 그것을 할 방법입니다 : 선택한 키가 먼저 내 모델 :

var model = new sap.ui.model.json.JSONModel({ 
        data: [ 
         { 
          key:'2', 
          text:'text' 
         }] 
       }); 

다음, 내 수액. 보기에 m.select : (내 선택 항목에 하드 코드가 2 개 밖에 없다는 것을 알고 있습니다. 그 외에는 sap.m.select에 집계 바인딩을 사용합니다)

<Select selectedKey="{key}" id='idSelect'> 
      <core:Item key="1" text="O530" /> 
      <core:Item key="2" text="O531" /> 
     </Select> 

여기에서 selectedkey는 내 모델에 저장된 키를 설정합니다.

다음, 컨트롤러 내 JSON 모델 바인딩 요소 :

this.getView().byId('idSelect').setModel(model).bindElement({ 
         path: '/data/' + 0 
        }); 

제대로 작품을 바인딩. JSON 모델에서 키를 변경할 수 있으며 sap.m.Select에서 해당 키가 선택됩니다.

+0

감사합니다. 저는 'setSelectedKey'를 사용하여 문제를 해결했습니다. – Tina

관련 문제