Показать сообщение отдельно
  #11 (permalink)  
Старый 29.03.2012, 09:14
Аспирант
Отправить личное сообщение для Eugent Посмотреть профиль Найти все сообщения от Eugent
 
Регистрация: 28.02.2012
Сообщений: 55

Загрузка формы с сервера
В ExtJS4 есть удобные механизмы, позволяющие написать проекты с минимумом идентификаторов, используйте их.

Простой пример работы с сервером:

php-код:
<?php
$result_arr = array(
	'success' => true,
	'data'	=> array(
		array(
			"fio"	=> "Петров Иван Иванович",
			"email"	=> "petro@test.ru"
		)
	)
);

echo json_encode($result_arr);
?>


html+js код:
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title>ExtJS4</title>
	<link rel="stylesheet" type="text/css" href="/libs/ext4/resources/css/ext-all-gray.css" />
	<script type="text/javascript" src="/libs/ext4/ext-all-debug.js"></script>
	<script type="text/javascript" src="/libs/ext4/locale/ext-lang-ru.js"></script>	
	<script>
    Ext.onReady(function() {
      
         var form = Ext.create('Ext.form.Panel', {
           name: 'myloadform',
           defaults: {
             padding: '15 0 0 15'
           },
           region: 'center',
           items: [
             {xtype: 'textfield', name: 'fio'},
             {xtype: 'textfield', name: 'email'}
           ]
        });
      
      Ext.create('Ext.container.Viewport', {
            layout	: 'border',
            defaults: {
                split: true,
                collapsible: true,
                collapseMode: 'mini',
                hideCollapseTool: true
            },
            items	: [
              {
                xtype: 'panel',                
                region: 'center',
                layout: 'fit',
                items: [
                  form
                ],
				listeners: {
					afterrender: function(th_pan){
						var form = th_pan.down('form[name=myloadform]');
						Ext.Ajax.request({
							url	: '/testero/data/getusers.php',
							method: 'GET',
							success: function(response, options){					
								try{
									var responseObj = Ext.decode(response.responseText);
									if(responseObj.success === true){
										form.getForm().setValues(responseObj.data[0]);
									}
								}
								catch(error){
									
								}
							}
						});
					}
				}
              }
            ]            
        });
      
    });
    </script>
</head>
<body></body>
</html>
Ответить с цитированием