2013-08-02 3 views
0

내가 원하는 것은 간단하지만 가능하면 잘 모른다.검도 템플릿 데이터 보내기

e.view.element.find("#list-serviceorders").kendoMobileListView({ 
    dataSource: ds, 
    pullToRefresh: true, 
    template: $("#list-serviceorders-template").html() 
}); 

그리고 일부 값이에 액세스 할 수있는 템플릿에 보낼 :

나는 아래와 같이 검도 모바일 ListView에 있습니다. 당신이 parameter.Divi1을 읽을 수 parameter.Divi2 내가 그 값을 표시하고자하는 장소가

<div data-role="view" data-before-show="GAPCP.viewBeforeShow" id="serviceorders" data-layout="main-item-list"> 
    <ul id="list-serviceorders"></ul> 
</div> 

<script id="list-serviceorders-template" type="text/x-kendo-template" data-teste="teste"> 
    <a href="views/entries.html?id=#: CodOs #">OS: #: CodOs #<br /> 
    #: parameter.Divi1 #: #: CodDivi1 #/#: parameter.Divi2 #: #: CodDivi2 #</a> 
</script> 

: 템플릿에 내 보기이있다. 그들은 다른 값처럼 데이터 소스에 없습니다.

전 전역 변수를 만들고 싶지 않습니다. 왜냐하면 저는 코드를 망치고 싶지 않아요. 그 값은 데이터베이스에서 왔기 때문에 함수를 사용할 수 없기 때문에 쿼리를 실행할 것입니다. 각 목록 항목 반복.

어떻게해야합니까?

+0

모델에 있거나 글로벌입니다. 나는 그 질문이 DataSource로 검색된 값의 목록을 가지지 않고 모델에서 가질 수 있다고 생각한다. 이것으로 충분합니까? 내가 무슨 말하는지 이해 하겠니? – OnaBai

+0

@OnaBai 그래, 알았다. 하지만 모델 대신 컨트롤러에서 사용할 수 있습니까? 그래서 예, 만약 내가 템플릿에 보낼 수 있다면, 내 문제를 해결할 것입니다. – DontVoteMeDown

답변

3

내가 제안하는 것은이 정보를 컨트롤러의 모델에 추가하는 것입니다. DataSource.schema.parse 또는 requestEnd에서 수행 할 수 있으며 위젯이 허용하는 경우 dataBound 이벤트에서도 가능합니다.

데이터를 받으면 모델을 반복하여 서버에서 수신하지 않은 나머지 데이터를 채 웁니다.

예 : I parse는 함수 내부 parameter 계산 및 소문자 CodDivi2에 상부 케이스에 CodDivi1parameter.Divi2parameter.Divi1 설정 parse

var ds = new kendo.data.DataSource({ 
    transport: { 
     read: { 
      url : ... 
     } 
    }, 
    schema : { 
     model: { 
      CodOs : { type: "number" }, 
      CodDivi1: { type: "string" }, 
      CodDivi2: { type: "string" } 
     }, 
     parse: function (data) { 
      $.each(data, function (idx, elem) { 
       // Extend original elem 
       elem.parameter = { 
        Divi1: elem.CodDivi1.toUpperCase(), 
        Divi2: elem.CodDivi2.toLowerCase() 
       } 
      }); 
      return data; 
     } 
    } 
}); 

사용.

+0

이 방법으로 템플릿이'CodOs, CodDivi1, CodDivi2, Divi1 and Divi2' (Divi1과 Divi2가 조작 될 것입니다)를 받으면 그 답은 그 질문을 만족시킬 것입니다. 나는 월요일에 그것을 시험 할 수있을 것이고, 나는 그 결과를 게시한다. 정말 고마워! – DontVoteMeDown

+0

니스! 그것은 효과가있다! 그리고 모델 객체를 전달할 필요가 없습니다. dataSource 콘텐트도 사용 가능하며 뷰에는'# : parameter.Divi1 # '만 사용해야합니다. 고맙습니다! – DontVoteMeDown