2015-03-13 5 views
0

Я использую jquery appendGrid плагин.jquery AppendGrid с динамическими данными

$(function() { 
// Initialize appendGrid 
$('#myTable').appendGrid({ 
    caption: 'Manage Field Specifications', 
    initRows: 1, 
    columns: [ 
      { name: 'SourceField', display: 'Source Field', type: 'text', ctrlAttr: { maxlength: 5 }, ctrlCss: { width: '90px'} } 
     ] 
}); 

myTableData = [ { "SourceField": "SRCFLD1"}];

// Fetch the data to show in the grid; 
$('#myTable').appendGrid('load', myTableData); 

Это прекрасно работает, если я предоставляю жестко закодированные данные в «myTableData». , но когда я делаю данные для извлечения из скрытого поля/другого содержимого с той же страницы, сетка ведет себя неожиданно.

скажите, myTableData = document.getElementById ("myHiddenDataForTable"). Value;

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

Помогите мне в получении динамических данных для таблицы, и таблица работает правильно с прилагаемыми динамическими данными.

Спасибо,

Сен

ответ

0
$('#myTable').appendGrid({ 
     caption: 'Manage Field Specifications', 
     initRows: 0, 
     columns: [ 
       { name: 'Album', display: 'Album', type: 'text', ctrlAttr: { maxlength: 100 }, ctrlCss: { width: '160px'} }, 
       { name: 'Artist', display: 'Artist', type: 'text', ctrlAttr: { maxlength: 100 }, ctrlCss: { width: '100px'} }, 
       { name: 'Year', display: 'Year', type: 'text', ctrlAttr: { maxlength: 4 }, ctrlCss: { width: '40px'} }, 
       { name: 'Origin', display: 'Origin', type: 'select', ctrlOptions: { 0: '{Choose}', 1: 'Hong Kong', 2: 'Taiwan', 3: 'Japan', 4: 'Korea', 5: 'US', 6: 'Others'} }, 
       { name: 'Poster', display: 'With Poster?', type: 'checkbox' }, 
       { name: 'Price', display: 'Price', type: 'text', ctrlAttr: { maxlength: 10 }, ctrlCss: { width: '50px', 'text-align': 'right' }, value: 0 } 
      ] 
    }); 



    // Prepare demo data 
    var AlbumCount = 0, AlbumData = []; 
    for (var z = 0; z < 500; z++) { 
     AlbumCount++; 
     AlbumData[z] = { 'Album': 'Album ' + AlbumCount, 'Artist': 'Artist ' + AlbumCount, 'Year': 2008 + Math.round(Math.random() * 5), 'Origin': 1 + Math.round(Math.random() * 5), 'Poster': Math.random() > 0.5, 'Price': 100 + Math.round(Math.random() * 1000)/10 }; 
    } 

    // Load data to grid 

    $('#myTable').appendGrid('load', AlbumData); 

Пожалуйста, используйте этот образец кода для загрузки данных в сетке.

+0

Спасибо Monish за ур ответить. Я могу предоставить данные с помощью этого метода, что вы предложили. Но когда я интегрируюсь с фактическим приложением, данные сетки становятся добавленными, когда страница загружается. К тому времени таблица инициализируется и отображается с неожиданными результатами. , пожалуйста, предложите мне получить живые/динамические данные в сетку. Спасибо, Сен – SenPbu

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