2015-11-03 225 views
-1

我已經爲handsontable中的複選框應用了自定義呈現器。我的handsontable在其所有行和列中只有複選框。只讀屬性將應用於在handsontable的設置中指定的行,但是當我在任何複選框上第一次點擊時,它會讓我取消選中它。一旦完成一次單擊,它就會使它只讀複選框自定義呈現爲handsontable不起作用

function readonly(instance, td, row, col, prop, value, cellProperties) { 
    Handsontable.CheckboxCell.renderer.apply(this, arguments); 
    cellProperties.readOnly = true; 
    td.style.background = '#ECECF2'; 



    var settings1 = { 
      data:$scope.secondGridData, 
      stretchH: 'false', 
      fillHandle: false, 
      colWidths: [85,120, 63, 63, 63,63, 63,63, 63,63, 63, 63, 63,63], 
      comments: true, 



          contextMenu: false, 
          className: "htCenter", 
          cells: function (row, col, prop) { 
            var cellProperties = {}; 
            if((row>=1())){ 
             cellProperties.renderer = readonly; 
            } 
return cellProperties; 
} 
+0

小提琴請好嗎? –

回答

0

嗯,一方面,您的設置似乎是在您的渲染器內定義,所以可能不這樣做。你應該返回td這就是爲什麼你的渲染器不工作。解決這兩件事情,它應該工作。

+0

,設置在渲染函數之外。我的糟糕,忘了包括大括號。但你是什麼意思返回td?我沒有明白 –

+0

你看到你的函數'readonly'是以'td'爲參數嗎?這是實際的HTML節點。你必須返回這個對象,否則你的渲染變化不會被應用。 – ZekeDroid