Արտադրանքի հաշվիչում գնումների խմբագրում
Եկեք այժմ իրականացնենք բջիջների խմբագրումը:
Պայմանով, որ միայն առաջին
3 բջիջներն են խմբագրելի:
Ահա դրանք.
createCell(tr, name.value, 'name');
createCell(tr, price.value, 'price');
createCell(tr, amount.value, 'amount');
Ակնհայտ է, որ խմբագրման կոդը կլինի
նույնը յուրաքանչյուր բջիջի համար. կրկնակի
սեղմումի դեպքում բջիջի տեքստի փոխարեն պետք է
հայտնվի input դաշտ, իսկ Enter սեղմելու դեպքում
դրա պարունակությունը պետք է դառնա բջիջի նոր տեքստը:
Ես առաջարկում եմ ստեղծել որոշակի ֆունկցիա, որն որպես պարամետր կվերցնի աղյուսակի բջիջը և դրան կկապի խմբագրման հնարավորությունը.
function allowEdit(td) {
td.addEventListener('dblclick', function() {
});
}
Այնուհետև մենք կարող ենք կիրառել մեր ֆունկցիան հետևյալ կերպ.
allowEdit(createCell(tr, name.value, 'name'));
allowEdit(createCell(tr, price.value, 'price'));
allowEdit(createCell(tr, amount.value, 'amount'));
Ուշադիր ընթերցողը կարող է նկատել, որ
ոչ բոլոր բջիջներն են նույնը. քանի որ փոխելիս
գնի կամ քանակի բջիջը, պետք է փոխվի
գնման արժեքը cost սյունակում,
ինչպես նաև կատարվի ընդհանուր գումարի վերահաշվարկ:
Այս նրբությունը մենք կթողնենք որպես հաջորդ ենթաառաջադրանք հաջորդ դասում լուծելու համար: Սկզբից ուղղակի ստեղծենք մեր երեք բջիջների խմբագրման հնարավորությունը՝ առանց վերահաշվարկի:
Իրականացրեք իմ կողմից նկարագրված բջիջների խմբագրումը: