У меня тест на сенсорном прикосновении, код следующий
test.js
Ext.setup({
onReady: function() {
Ext.regModel('car', {
fields: [
{name: 'manufacture',type: 'string'},
{name: 'model', type: 'string'},
{name: 'price', type: 'decimal'}
]
});
var productsList = new Ext.DataView({
store: new Ext.data.Store({
model: 'car',
proxy: {
type: 'ajax',
url : 'cars.json',
reader: {
type: 'json',
root: 'data'
}
},
autoLoad : true
}),
tpl: new Ext.XTemplate(
'<tpl for=".">',
'<div class="item">',
'"{manufacture}"',
'"{model}"',
'"{price}"',
'</div>',
'</tpl>'
),
itemSelector: "div.item",
fullscreen: true
});
}
});
код json (cars.json)
{ "данные": [{ "производство": "SSANYONG", "модель": "Actyon", "цена": 100000}, { "производство": "SUZUKI", "модель": "АЛЬТ", "цена": 80000}], "результаты": 3}
этот пример работает, но я прочитал данные с сервера, код из c # / aspx выглядит следующим образом
protected void Page_Load(object sender, EventArgs e)
{
List<car> oList = new List<car>();
car c = new car();
c.manufacture = "SSANYONG";
c.model = "ACTYON";
c.price = 100000;
car d = new car();
d.manufacture = "SUZUKI";
d.model = "ALTO";
d.price = 80000;
oList.Add(c);
oList.Add(d);
string sJSON;
System.Web.Script.Serialization.JavaScriptSerializer oSerializer = new System.Web.Script.Serialization.JavaScriptSerializer();
sJSON = oSerializer.Serialize(oList);
sJSON=string.Concat("{\"data\":", sJSON);
sJSON=string.Concat(sJSON,",\"results\":3}");
Response.ContentType = "application/json";
Response.Write(sJSON);
}
класс автомобиля
public class car
{
public string manufacture { get; set; }
public string model { get; set; }
public double price { get; set; }
}
когда я запускаю aspx, в localhost отображается тот же текст, что cars.json, я пытаюсь с другим кодом
меняет "application / json" на "application / x-json",
"application / json" в "text / javascript",
"тип прокси: ajax" для "scripttag",
"тип прокси: ajax" для "отдыха"
не работает.