Gridの編集制御
例えば、権限を持っていないユーザには行の編集をさせたくないという事がある。
そういう場合は、onEditFieldを使う。
$('#grid').w2grid({ name : 'grid', columns: [ { field: 'recid', caption: 'ID', size: '50px' }, { field: 'lname', caption: 'Last Name', size: '30%' }, { field: 'fname', caption: 'First Name', size: '30%' } ], onEditField: function (event) { if (権限がない場合) { // 編集イベントをキャンセル event.preventDefault(); } } });
Multi Selectsの初期選択
FormのMulti Selectsの初期選択は以下の記載を元にselectedにて指定していたのですが、初期選択表示されませんでした。
$('#enum').w2field('enum', { items: people, openOnFocus: true, selected: [{ id: 0, text: 'John Adams' }, { id: 0, text: 'Thomas Jefferson' }] });
ソースを読んでみると、recordの値でselectedが上書きされていました。
なので次のように設定するとデフォルト値として表示されます。
$('#form').w2form({ name : 'form', url : 'server/post', header : 'Field Types', formURL : 'data/form.html', fields: [ { field: 'field_enum', type: 'enum', openOnFocus: true, options: { items: [{ id: 0, text: 'Adams' }, { id: 1, text: 'Johnson' }] } }, ], record : { field_enum : [{ id: 0, text: 'Adams' }] } });