Javascript-форум (https://javascript.ru/forum/)
-   ExtJS (https://javascript.ru/forum/extjs/)
-   -   new tab with json load (https://javascript.ru/forum/extjs/10370-new-tab-json-load.html)

mycoding 01.07.2010 09:57

new tab with json load
 
Подскажите пожалуйста, уже второй день сделать не получается.
На сайте сделал регистрацию и вход.
Когда пользователь входит на сайт, появляется кнопка личного кабинета.
Нажимаем на кнопку и должен появиться новый таб а в него загрузиться данные о пользователе в json формате.
Эти данные надо сформировать в html.
Если бы это был grid делается легко, а просто текст сформировать не получается.
Вот ссылка на сайт
http://vreshenie.ru
Вот код
handler:function(){						
					Ext.getCmp('center').add({title:'Личный кабинет',iconCls:'smallImageUser',closable:true}).show();					
					Ext.Ajax.request({
						loadMask: true,
						url: 'http://vreshenie.ru/usertest.json',
						//params: {id: "1"},
						success: function(resp){							
							var data = eval('('+resp.responseText+')');
							var html='Email:<h1>'+data.email+'</h1>'+
								'Первое посещение:<p>'+data.firstVisit+'</p>'+
								'Прошлое посещение посещение:<p>'+data.prevVisit+'</p>'+
								'IP при первом посещении:<p>'+data.ip+'</p>'+
								'Денег на счету:<p>'+data.money+'</p>'+
								'Проплата за месяц:<p>'+data.thisMonthPaid+'</p>'+
								'Все проплаченные месяцы:<p>'+data.thisMonthPaid+'</p>'+
								'Рейтинг автора+:<p>'+data.rateNPlus+'</p>'+
								'Рейтинг автора-:<p>'+data.rateNMinus+'</p>'+
								'<b style="font-size: 13px;"><p>Данные о системе при первом посещении'+data.dataOfUserSystem+'</p></b>';
						}
					});

mycoding 02.07.2010 10:03

Вот так сделал
handler:function(){
					Ext.Ajax.request({						
						url: 'http://vreshenie.ru/usertest-1.json',
						waitMsg: 'Загрузка...',						
						success: function(result, request){
						    jsonData = Ext.util.JSON.decode(result.responseText);
							//alert(result.responseText);
							//var data = eval('('+result.responseText+')');
							//alert(data.email);
							//alert(jsonData.rows[0].email);							
							if(jsonData.success!=true){Ext.Msg.alert('Ответ сервера','Запрос не выполнен.');}
							else{
								var data=jsonData.rows[0],
									html='Email:<h1>'+data.email+'</h1>'+
										'Первое посещение:<p>'+data.firstVisit+'</p>'+
										'Прошлое посещение посещение:<p>'+data.prevVisit+'</p>'+
										'IP при первом посещении:<p>'+data.ip+'</p>'+
										'Денег на счету:<p>'+data.money+'</p>'+
										'Проплата за месяц:<p>'+data.thisMonthPaid+'</p>'+
										'Все проплаченные месяцы:<p>'+data.thisMonthPaid+'</p>'+
										'Рейтинг автора+:<p>'+data.rateNPlus+'</p>'+
										'Рейтинг автора-:<p>'+data.rateNMinus+'</p>'+
										'<b style="font-size: 13px;"><p>Данные о системе при первом посещении'+data.dataOfUserSystem+'</p></b>';
									Ext.getCmp('center').add({title:'Личный кабинет',iconCls:'smallImageUser',closable:true,autoScroll:true,padding:'5 5 5 5',html:html}).show();
							}
						}
					});				
				},
				hidden:true
			},

DooMer 09.07.2010 13:46

лучше использовать стандартный шаблон Extjs - template/xtemplate


Часовой пояс GMT +3, время: 00:18.