Javascript-форум (https://javascript.ru/forum/)
-   ExtJS (https://javascript.ru/forum/extjs/)
-   -   Ошибка missing = in XML attribute (https://javascript.ru/forum/extjs/26159-oshibka-missing-%3D-xml-attribute.html)

Aleks-prog 28.02.2012 14:40

Ошибка missing = in XML attribute
 
Здравствуйте, появилась проблема с EXT.AJAX, ни в какую не хочет создавать новый combobox с определенными данными из store

делаю так: но на выходе не создается новый combobox

var val2 = simpleCombo2.getValue(); // присваиваем сотрудника
                
                Ext.Ajax.request({
                     url: '<?php echo $this->url(array('controller'=>'index','action'=>'response')) ?>',
                     params: {
                     emp: val2
                    },
                    success: function(response){
                      
                            var dat = response.responseText;
                            var store = Ext.create('Ext.data.Store', {
                         model: 'State2',
                         data: eval(dat)
                            });
                            var simpleCombo = Ext.create('Ext.form.field.ComboBox', {
    id: 'combo1',
    margin: '5 0 0 5',
    fieldLabel: 'Выберите расчетный период',
    renderTo : 'tab1',
    displayField: 'name_emp',
    width: 500,
    labelWidth: 200,
    store: store,
    queryMode: 'local',
    typeAhead: true
   
});
                    }
                    });


Из экшена response берется массив так:

<?php
if(isset($this->arr_period)){
    $arr_period =  $this->arr_period;
    $ar = json_encode($arr_period);
    print_r ($ar);
}
 
?>


Пишет такую ошибку

missing = in XML attribute
id: 'combo1',

на строке 16

По идее должен же создавать новый combobox, но ничего не создает хотя запрос со статусом 200

Aleks-prog 29.02.2012 12:50

если не сложно, помогите пожалуйста

Aleks-prog 29.02.2012 22:26

$this->arr_period;

здесь хранится массив
после if(isset($this->arr_period)){

$arr_period = $this->arr_period;

$ar =$arr_period;

print_r ($ar);

вот что выводит alert(response.responseText),

хотя должен был вывести просто массив без каких либо тегов

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
    <head>    
 <link href="extjs/resources/css/ext-all.css" media="screen" rel="stylesheet" type="text/css" /><script type="text/javascript" src="/extjs/ext-all.js"></script>
 


    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" > 
</head>
<body>
    Array
(
    [0] => Array
        (
            [id] => 1
            [year] => 2010
        )

)
    
</body>
</html>


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