jQuery/rib - jQgrid

๐ŸงฉjqGrid - cell - editable(style)

dev_jiwon 2022. 12. 13.

๐ŸงฉjqGrid - cell - editable(style)๐Ÿงฉ

 

1. cellattr ์˜ต์…˜์„ ํ†ตํ•œ ํŽธ์ง‘ ์œ ๋ฌด ์„ค์ •ํ•˜๊ธฐ (ft. ํŽธ์ง‘ ๋ฐฉ์ง€)

cellattr: function(rowid, value, rawObject, cm, rdata) {
		// ํ•„์š”์— ๋”ฐ๋ผ์„œ if ์กฐ๊ฑด๋ฌธ์„ ๊ฑธ์–ด ์กฐ๊ฑด์— ๋งž๋Š” cell๋งŒ ํŽธ์ง‘ ๋ฐฉ์ง€
		return "class='not-editable-cell'";
},
๐Ÿ”ฅ cellattr ์˜ต์…˜์€ jqgrid์—์„œ ์‚ฌ์šฉ๋˜๋Š” colmodel ์˜ต์…˜ ์ค‘ ํ•˜๋‚˜์ธ๋ฐ, ํŽธ์ง‘ ์œ ๋ฌด ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ํ•  ๋•Œ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ์˜ต์…˜์ด๋‹ค.
๐Ÿ”ฅ cell ๋งˆ๋‹ค ๋ฐ˜๋ณต๋˜๋ฉฐ ํ•ด๋‹น ํ•จ์ˆ˜๊ฐ€ ์‹คํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์— cell ์†์„ฑ์„ ์ฃผ์ž…ํ•  ์ˆ˜ ์žˆ์–ด, cell ๋งˆ๋‹ค ‘not-editable-cell’ ํด๋ž˜์Šค๋ฅผ ์ฃผ์ž…ํ•˜์—ฌ ํŽธ์ง‘ ๋ฐฉ์ง€๋ฅผ ๊ฑธ์–ด๋‘” ๊ฒƒ์ด๋‹ค.

 

2. setCell์„ ์‚ฌ์šฉํ•œ ํŠน์ • ์ปฌ๋Ÿผ์˜ ๊ฐ’, ํด๋ž˜์Šค, ์Šคํƒ€์ผ ๋“ฑ ์†์„ฑ ๋ณ€๊ฒฝํ•˜๊ธฐ 

jqGrid์—๋Š” ํŠน์ •ํ•œ ์ปฌ๋Ÿผ์˜ ์…€์„ ์ˆ˜์ •ํ•˜๋Š”๋ฐ์— ์‚ฌ์šฉ๋˜๋Š” ๋‹ค์šฉ๋„์˜ ๋ฉ”์„œ๋“œ๊ฐ€ ์กด์žฌํ•œ๋‹ค.

๐Ÿ”ฅ setCell ๋ฉ”์„œ๋“œ๋Š” ํŠน์ • ์ปฌ๋Ÿผ ์…€์˜ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๊ฑฐ๋‚˜ ์Šคํƒ€์ผ ๋ณ€๊ฒฝ ๋“ฑ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

 

ํŠน์ • ์ปฌ๋Ÿผ์˜ ๊ฐ’ ๋ณ€๊ฒฝํ•˜๊ธฐ(ft. ๋นˆ๊ฐ’์œผ๋กœ ๋งŒ๋“ค๊ธฐ)

// ๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ•
$('#mainGrid').jqGrid('setCell', rowid, cellname, data);

// jqg14์˜ id๋ฅผ ๊ฐ€์ง„ row์˜ main ์ปฌ๋Ÿผ/์…€์˜ ๊ฐ’์„ record๋กœ ๋ณ€๊ฒฝํ•œ๋‹ค.
$('#mainGrid').jqGrid('setCell', 'jqg14', 'mine', 'record');

// jqg14์˜ id๋ฅผ ๊ฐ€์ง„ row์˜ mine ์ปฌ๋Ÿผ/์…€์˜ ๊ฐ’์„ ๋น„์šด๋‹ค.
$('#mainGrid').jqGrid('setCell', 'jqg14', 'mine');

→ ํŠน์ • ์ปฌ๋Ÿผ์˜ ๊ฐ’์„ ๋น„์šฐ๊ธฐ ์œ„ํ•ด data ๋งค๊ฐœ๋ณ€์ˆ˜ ๋ถ€๋ถ„์„ ๋นˆ ์ฟผํ„ฐ(’’)๋กœ ๋„ฃ์–ด์ฃผ๋ฉด ์—๋Ÿฌ๋Š” ๋‚˜์ง€ ์•Š์ง€๋งŒ ์•„๋ฌด ์ผ๋„ ์ผ์–ด๋‚˜ใ…ฃ ์•Š๋Š”๋‹ค.

 

ํŠน์ • ์ปฌ๋Ÿผ์˜ ์Šคํƒ€์ผ ์ถ”๊ฐ€/๋ณ€๊ฒฝํ•˜๊ธฐ (ft. ๋ฐฐ๊ฒฝ์ƒ‰ ์ฃผ๊ธฐ)

// ๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ• (์Šคํƒ€์ผ์„ ์ค„๋•Œ๋Š” data ๋ถ€๋ถ„์„ ๋นˆ ์ฟผํ„ฐ๋กœ ๋„˜๊ฒจ์ค€๋‹ค.)
$('#mainGrid').jqGrid('setCell', rowid, cellname, data, properties);

// mine ์ปฌ๋Ÿผ์˜ ๋ฐฐ๊ฒฝ ์ƒ‰์ƒ์„ ๋ณ€๊ฒฝํ•œ๋‹ค.
$("#mainGrid").jqGrid('setCell', 'jqg14', 'mine', '', {'background':'#fcfdfd'});

// mine ์ปฌ๋Ÿผ์˜ ๋ฐฐ๊ฒฝ ์ƒ‰์ƒ๊ณผ ๊ธ€์ž ์ƒ‰์„ ๋ณ€๊ฒฝํ•œ๋‹ค.
$("#mainGrid"=).jqGrid('setCell', 'jqg14', 'mine', '', {'background':'#fcfdfd', 'color':'red'});

 

ํŠน์ • ์ปฌ๋Ÿผ์˜ ํด๋ž˜์Šค ์ถ”๊ฐ€ํ•˜๊ธฐ

// ๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ• (ํด๋ž˜์Šค๋ฅผ ์ค„๋•Œ๋Š” data ๋ถ€๋ถ„์„ ๋นˆ ์ฟผํ„ฐ๋กœ ๋„˜๊ฒจ์ค€๋‹ค)
$("#mainGrid").jqGrid('setCell', rowid, cellname, data, class);

// mine ์ปฌ๋Ÿผ์— it ํด๋ž˜์Šค๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค.
$("#mainGrid").jqGrid('setCell', 'jqg14', 'mine', '', 'it');

// mine ์ปฌ๋Ÿผ์— record ํด๋ž˜์Šค๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค.
$("#mainGrid").jqGrid('setCell', 'jqg14', 'mine', '', 'record'); 

cf. ํด๋ž˜์Šค ์˜ˆ์ œ๋ฅผ ๋ณด๋ฉด ์˜์•„ํ•˜๊ฒŒ๋„ ์Šคํƒ€์ผ์„ ์ถ”๊ฐ€ํ•ด์ค„ ๋•Œ ์‚ฌ์šฉํ•œ ์œ„์น˜์— ๊ทธ๋Œ€๋กœ ํด๋ž˜์Šค๋ช…์„ ์ฃผ์–ด ์‚ฌ์šฉํ•œ๋‹ค. ์•„๋งˆ ๋ฐ›๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜ ํƒ€์ž„์ด ๋‹ฌ๋ผ์„œ ๊ฐ€๋Šฅํ•œ ๊ฒƒ ๊ฐ™๋‹ค.

๊ทธ๋ฆฌ๊ณ , ํด๋ž˜์Šค๋ฅผ ์ถ”๊ฐ€ํ–ˆ์œผ๋ฉด ์‚ญ์ œ๋ฅผ ํ•ด์ค˜์•ผํ•˜๋Š”๋ฐ, ์ด๋Š” ํ‘œ์ค€ ๋ฉ”์„œ๋“œ์—๋Š” ์กด์žฌํ•˜์ง€ ์•Š๊ณ  ์ง์ ‘์ ์œผ๋กœ ์ ‘๊ทผํ•ด์„œ ์ง€์›Œ์ค˜์•ผํ•˜๋Š” ๋ฒˆ๊ฑฐ๋กœ์›€์ด ์กด์žฌํ•œ๋‹ค.


์ฐธ๊ณ 

 

[jqGrid] ํŠน์ • ์ปฌ๋Ÿผ/์…€(Cell)์˜ ๊ฐ’, ํด๋ž˜์Šค, ์Šคํƒ€์ผ ๋“ฑ ๋ณ€๊ฒฝํ•˜๊ธฐ (ft. setCell)

- setCell์„ ์‚ฌ์šฉํ•œ ํŠน์ • ์ปฌ๋Ÿผ์˜ ๊ฐ’, ํด๋ž˜์Šค, ์Šคํƒ€์ผ ๋“ฑ ์†์„ฑ ๋ณ€๊ฒฝํ•˜๊ธฐ - jqGrid์—๋Š” ํŠน์ •ํ•œ ์ปฌ๋Ÿผ์˜ ์…€์„ ์ˆ˜์ •ํ•˜๋Š”๋ฐ์— ์‚ฌ์šฉ๋˜๋Š” ๋‹ค์šฉ๋„์˜ ๋ฉ”์„œ๋“œ๊ฐ€ ์กด์žฌํ•œ๋‹ค. setCell์ด๋ผ๋Š” jqGrid ๋‚ด์žฅ ๋ฉ”์„œ๋“œ์— ๋Œ€ํ•ด

mine-it-record.tistory.com

 

 

[jqGrid] ํŠน์ • ์…€ ํŽธ์ง‘(editable) ์œ ๋ฌด ์„ค์ •ํ•˜๊ธฐ (ft. editable-cell, not-editable-cell)

- ํŠน์ • ์…€ ํŽธ์ง‘(editable) ์œ ๋ฌด ์„ค์ •ํ•˜๊ธฐ - jqGrid๋ฅผ ์‚ฌ์šฉํ•˜๋‹ค๋ณด๋ฉด cellEdit ์˜ต์…˜์„ ํ†ตํ•ด ํŽธ์ง‘๋ชจ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์…€์„ ํŽธ์ง‘ํ•˜๊ฒŒ ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋Š”๋ฐ, ์ด๋•Œ "editable-cell", "not-editable-cell" ์ด๋ผ๋Š” ํด๋ž˜์Šค ์†์„ฑ

mine-it-record.tistory.com

 

'jQuery > rib - jQgrid' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

๐ŸงฉjqGrid ๊ฐ„๋‹จํ•œ ์‚ฌ์šฉ๋ฒ•  (0) 2022.12.14

๋Œ“๊ธ€