2014-01-09 4 views
0

Я занимаюсь реализацией сетки kendo со сложным json. Все renderes хорошо, но мне нужно, чтобы добавить новый элемент в существующий datasource.Here мой JSONДобавление данных в существующий источник данных kendo

Json

{ 
     "id": "1", 
     "EPF": "1000", 
     "Name": "Chinthaka", 
     "Components": [ 
      { 
       "Component": "Back Part", 
       "Style": "Style", 
       "StyleOperation": "Style Operation", 
       "PCS": "30", 
       "TotalPCS": "120" 
      }, 
      { 
       "Component": "Back Part", 
       "Style": "Style", 
       "StyleOperation": "Style Operation", 
       "PCS": "130", 
       "TotalPCS": "160" 
      } 

     ] 
    } 

Так что мне нужно, чтобы добавить новый Componet к существующему компоненту Теперь у меня есть 3 компонента и должен отображаться при том же уровне

{ "Component": "Назад Часть", "Стиль": "Стиль", "StyleOperation": "Стиль работы", "PCS": "80", «TotalPCS»: «10» }

Если кто-нибудь может помочь мне в этом, что было бы здорово

ответ

1

Просто нажмите новый компонент в массив и используйте текущий код рендеринга.

var data = { 
    "id": "1", 
    "EPF": "1000", 
    "Name": "Chinthaka", 
    "Components": [ 
     { 
      "Component": "Back Part", 
      "Style": "Style", 
      "StyleOperation": "Style Operation", 
      "PCS": "30", 
      "TotalPCS": "120" 
     }, 
     { 
      "Component": "Back Part", 
      "Style": "Style", 
      "StyleOperation": "Style Operation", 
      "PCS": "130", 
      "TotalPCS": "160" 
     } 

    ] 
} 

data.Components.push({ 
    "Component": "Back Part", 
    "Style": "Style", 
    "StyleOperation": "Style Operation", 
    "PCS": "80", 
    "TotalPCS": "10" 
}) 
+0

wow man great you're a life spavior. Спасибо david wow, используя ваш ответ, мне удалось сделать это var raw = dataSource.data(); \t \t \t \t dataSource.add (сырье [0] .Components.push ({ \t \t \t \t \t "Компонент": "VVVVV", \t \t \t \t \t "Стиль": "Styleqqqq", \t \t \t \t \t "StyleOperation": "Стиль работы", \t \t \t \t \t "PCS": "8011", \t \t \t \t \t "TotalPCS": "1011" \t \t \t \t})); –

0

Либо сделать другое чтение на сервер с источником данных. Если вы не читаете с сервера, получите индекс текущих компонентов и укажите следующий после него с данными, которые у вас есть, выполните синхронизацию компонента источника данных и, возможно, вам придется перерисовать/обновить компонент для отображения новых данных ,

+0

Wow Paradox Я пробовал ваше решение, но восстановление данных является проблемой для меня. Но просто подталкивание данных к массиву сработало для меня. Спасибо Paradox. Я действительно ценю, что вы оба, ребята, даете мне эти замечательные решения. Спасибо Paradox ;-) –

Смежные вопросы