rajen shrestha
25 Aug 2011, 10:51 PM
Hi,
Neet help me to delete row from a grid.
I am using ASP.net MVC application.
I am new to Sencha.
Problem: 1) Not able to retrieve selected value, object, from grid row when click on delete button
var clientModel = Ext.define('Client', {
extend: 'Ext.data.Model',
fields: [
{ name: 'Serial', type: 'string' }, 'Serial'
]
});
Ext.onReady(function() {
var regMachinesStore = new Ext.data.Store({
model: 'Client',
autoSync: true,
proxy: new Ext.data.HttpProxy({
type: 'rest',
url: '/License/Clients',
reader: {
type: 'json',
root: 'clients'
},
writer: {
type: 'json'
}
})
});
var rowEditing = Ext.create('Ext.grid.plugin.RowEditing');
var grid = Ext.create('Ext.grid.Panel', {
renderTo: document.body,
plugins: [rowEditing],
id: 'myGridClientMachine',
store: regMachinesStore,
frame: true,
border: 1,
columns: [
{
text: 'Serial', dataIndex: 'Serial',
renderer: function(value, metadata, record, rowIndex, colIndex, store, view) {
return value;
}
}
]
});
var MyRDMFTabPanelUi = new Ext.Panel
({
items:
[
grid
,
{
xtype: 'button',
text: 'Delete',
margin: '0 5 0 5',
listeners:
{
'click': function() {
alert(grid.getSelectionModel().getLastSelected());
alert(grid.getSelectionModel().getSelected());
if (!grid.selModel.selection) {
alert("Not selected");
return;
}
var record = grid.selModel.selection.record;
alert(record);
Ext.Ajax.request
({
url: '/License/Delete',
method: 'post',
params: {
Serial: Ext.ComponentMgr.get('myGridClientMachine').getSelectionModel()
},
success: function(response) {
var json = Ext.decode(response.responseText);
Ext.Msg.alert("Message", json.value);
}
});
}
}
}
]
});
MyRDMFTabPanelUi.render('mainControls');
regMachinesStore.on({
'load': {
fn: function(store, records, options) {
Ext.Msg.alert("Debug Message", "Store " + store.getTotalCount());
Ext.Msg.alert("Debug Message", "records " + records);
}
}
, scope: this
});
regMachinesStore.load();
}); //onReady
C#
public ActionResult Clients()
{
List<Client> clients = new List<Client>();
Client client1 = new Client();
client1.Serial = "1234";
Client client2 = new Client();
client2.Serial = "41234";
clients.Add(client1);
clients.Add(client2);
return Json(new { clients = clients, totals = clients.Count() }, JsonRequestBehavior.AllowGet);
}
public ActionResult Delete(Client Client)
{
return Json(new { success = true });
}
Neet help me to delete row from a grid.
I am using ASP.net MVC application.
I am new to Sencha.
Problem: 1) Not able to retrieve selected value, object, from grid row when click on delete button
var clientModel = Ext.define('Client', {
extend: 'Ext.data.Model',
fields: [
{ name: 'Serial', type: 'string' }, 'Serial'
]
});
Ext.onReady(function() {
var regMachinesStore = new Ext.data.Store({
model: 'Client',
autoSync: true,
proxy: new Ext.data.HttpProxy({
type: 'rest',
url: '/License/Clients',
reader: {
type: 'json',
root: 'clients'
},
writer: {
type: 'json'
}
})
});
var rowEditing = Ext.create('Ext.grid.plugin.RowEditing');
var grid = Ext.create('Ext.grid.Panel', {
renderTo: document.body,
plugins: [rowEditing],
id: 'myGridClientMachine',
store: regMachinesStore,
frame: true,
border: 1,
columns: [
{
text: 'Serial', dataIndex: 'Serial',
renderer: function(value, metadata, record, rowIndex, colIndex, store, view) {
return value;
}
}
]
});
var MyRDMFTabPanelUi = new Ext.Panel
({
items:
[
grid
,
{
xtype: 'button',
text: 'Delete',
margin: '0 5 0 5',
listeners:
{
'click': function() {
alert(grid.getSelectionModel().getLastSelected());
alert(grid.getSelectionModel().getSelected());
if (!grid.selModel.selection) {
alert("Not selected");
return;
}
var record = grid.selModel.selection.record;
alert(record);
Ext.Ajax.request
({
url: '/License/Delete',
method: 'post',
params: {
Serial: Ext.ComponentMgr.get('myGridClientMachine').getSelectionModel()
},
success: function(response) {
var json = Ext.decode(response.responseText);
Ext.Msg.alert("Message", json.value);
}
});
}
}
}
]
});
MyRDMFTabPanelUi.render('mainControls');
regMachinesStore.on({
'load': {
fn: function(store, records, options) {
Ext.Msg.alert("Debug Message", "Store " + store.getTotalCount());
Ext.Msg.alert("Debug Message", "records " + records);
}
}
, scope: this
});
regMachinesStore.load();
}); //onReady
C#
public ActionResult Clients()
{
List<Client> clients = new List<Client>();
Client client1 = new Client();
client1.Serial = "1234";
Client client2 = new Client();
client2.Serial = "41234";
clients.Add(client1);
clients.Add(client2);
return Json(new { clients = clients, totals = clients.Count() }, JsonRequestBehavior.AllowGet);
}
public ActionResult Delete(Client Client)
{
return Json(new { success = true });
}