EXTJS 4.0.7 gplを使用しています。私はform/form-grid.jsの下の例を使って作業しています。フォームに表示されているエントリを編集した後、この例でグリッドをリロードします。フォーム/ form-grid.jsでEXTJS4の例を使用する - 送信フォームの後にグリッドをリロードする方法
PHP Webサービスを使用してフォームグリッドにデータをロードしています。私は、編集を行うときにフォームエントリを処理し、グリッドの値を更新するハンドラを設定しています。それは正常に動作し、データベースを更新します。成功すると、私は店舗のリロードを呼び出し、以下の関数呼び出しを使用してJSONがリロード(FireBug)に戻るのを見ますが、データはグリッドに読み込まれません。ストアの負荷から戻ってきたデータをグリッドに書き込んで更新する方法。
最終的にはMVCを使用したいと思いますが、今のところ私はform.submit successでフォームグリッドのグリッドをリロードすることができます。
私は私の店で「tvdStore」の「storeId」を持っていると私は使用して店のリロードを実行します、私はJSONをグリッドにロードされなければならないのFirebugに戻ってきて見
{
xtype: 'button',
text: 'Save',
style: 'margin: 0 5px 0 5px',
handler: function (button) {
// when this button is clicked, sumbit this form
var form = this.up('form').getForm();
var rating = form.findField("rating").getValue();
var formTargetId = form.findField("ID").getValue();
var formFamilyName = form.findField("FAMILYNAME").getValue();
var formTargetName = form.findField("TARGETNAME").getValue();
var formTableName = form.findField("TABLENAME").getValue();
// convert the int value back to a string
var stringVal = "";
if (rating === true) {
stringVal = 'Yes';
} else if (rating === false) {
stringVal = 'No';
}
form.submit({
waitMsg: 'Saving...', // Wait Message
method: 'POST',
params: { 'targetValue' : stringVal , 'targetId' : formTargetId , 'tableName' : targetName },
url: 'app/model/target/GG/add-update_svc.php',
success: function (form, action) { // When saving data success
Ext.Msg.alert('Success', action.result.message);
// clear the form
form.reset();
// reload store
Ext.data.StoreManager.lookup('tvdStore').load(
{
params: {
tableName: formTableName,
targetName: targetName,
familyName: formFamilyName
}
}
);
},
failure: function (form, action) { // when saving data failed
Ext.MessageBox.alert ('Message','Saving data failed');
}
});
}
}
をストアはリロードしていますが、loadMaskは表示されず、グリッド自体は更新されません。