2016-09-03 51 views
0

私はjqGridテーブルを持っていて、sortableの行を持っています。 グリッドデータ列の1つに、入力を返すカスタムforamterがあります。私はFirefoxのでグリッドを開くと、入力がクリックできないhttp://fiddle.jshell.net/ejswLqjz/入力ボックスのjqGridはクリックできません

var data = [ 
    [48803, "DSK1", "", "02200220", "OPEN"], 
    [48769, "APPR", "", "77733337", "ENTERED"], 
    [48813, "DSK1", "", "02200220", "OPEN"], 
    [48770, "APPR", "", "77733337", "ENTERED"] 
]; 

function inputBox (cellvalue, options, rowObject){ 
    return '<input type="text" value=" '+ rowObject.thingy +'" />'; 
} 

$("#grid").jqGrid({ 
    datatype: "local", 
    height: 250, 
    colNames: ['Inv No', 'Thingy', 'Blank', 'Number', 'Status'], 
    colModel: [{ 
     name: 'id', 
     index: 'id', 
     sorttype: "int" 
    }, { 
     name: 'thingy', 
     index: 'thingy', 
     sorttype: "date", 
     formatter: inputBox 
    }, { 
     name: 'blank', 
     index: 'blank', 
    }, { 
     name: 'number', 
     index: 'number', 
     sorttype: "float" 
    }, { 
     name: 'status', 
     index: 'status', 
     sorttype: "float" 
    }], 
    caption: "Stack Overflow Example", 
    gridview: true, 
    rowattr: function (rd) { 
     if (rd.thingy==="DSK1") { 
      return { "class": "notsortable" }; 
     } 
    } 
}); 

var names = ["id", "thingy", "blank", "number", "status"]; 
var mydata = []; 

for (var i = 0; i < data.length; i++) { 
    mydata[i] = {}; 
    for (var j = 0; j < data[i].length; j++) { 
     mydata[i][names[j]] = data[i][j]; 
    } 
} 

for (var i = 0; i <= mydata.length; i++) { 
    $("#grid").jqGrid('addRowData', i + 1, mydata[i]); 
} 
$('#grid').jqGrid('sortableRows'); 

の作業例はで見つけることができます。入力が編集可能であることに注意してください(タブを押し続けて入力がフォーカスを取得し、編集できる場合)。 IEとChromで動作します。


ソート可能なものを削除しても問題ありません。

答えて

0

バグや、これまでどのような....

私は http://fiddle.jshell.net/rjj5g370/

入力作業をサンプルに onclick="this.focus();"を追加しましたているように見えます
関連する問題