私の人生にとって、私はSlickGridで特定のセル値を返すようには思えません。 SO here.の例がありますが、これはうまくいきませんでした。私はSlickGridチュートリアル#7を私の例として使用しています。私がしようとしているのは、そのセル値を返すクリックイベントをセルに追加することだけです。SlickGridで特定のセル値を返すにはどうすればよいですか?
注:JSONリクエストでデータをロードしていますが、すべて正常に動作します。私のクリックイベントは発生しますが、値は未定義です。簡潔にするため、私はグリッドの列とオプションのコードを省略します。ここにコードとありがとうございます。すべてとすべてが素晴らしいグリッドです。
var sortcol = "id";
var sortdir = -1;
$(function() {
$.getJSON(baseURL() + 'programs', function (data) {
dataView = new Slick.Data.DataView();
grid = new Slick.Grid($("#program-grid"), data, programColumns, programOptions);
grid.onSort = function (sortCol, sortAsc) {
sortdir = sortAsc ? 1 : -1;
sortcol = sortCol.field;
if (sortAsc == true) {
data.sort(compare);
}
else {
data.reverse(compare);
}
grid.render();
};
grid.onClick = function (e, row, cell) {
if (programColumns[cell].id == "id") {
var x = data[row][cell].field;//This is where I am stuck
window.location.href = "http://google.com/" + x;
}
}
});
});
私もことを試してみましたが、私はまだ未定義得ます。面白いことに、私がファイヤーバグでデバッグするとき、行と列のインデックス番号が正しいです。価値がない。 – trevorc
更新私は問題が何かを理解しました。私のJSONオブジェクトのプロパティは、ラクダのケース名(FirstName、LastNameなど)で結ばれています。SlickGridは、(すべてのアカウントによって)通常は必要なフィールドを識別するために使用される「id」フィールドを持っています。私の例のように "if(programColumns [cell] .id ==" id ")"はSlickGridのIDフィールドを参照しています。だから要するに "data [row] .NameAndCaseOfFieldAsItAppearsOverWire"は正しいです。助けてくれてありがとうJason。 +1 – trevorc