Combobox не распознает символ '(' ')' - PullRequest
1 голос
/ 26 мая 2011

Я храню комбинированный список с несколькими данными, подобными этим:

var materialstore = Ext.create('Ext.data.Store',{

            //fields : [ 'id','data'],
            model :'Combox',
            data : [ 
            { "id" : "12270",
            "data" : "Basic Monthly Support Contract"}
             , 
            { "id" : "12261",
            "data" : "Business Analysis Hour"}
             ,
            { "id" : "12264",
            "data" : "Project/Consulting (Base System)"}

Чтобы обновить мой ряд, мне нужно сделать черту, чтобы получить идентификатор. я делаю функцию, чтобы сделать это, но когда поле данных имеет символ типа '(' или ')', моя функция не работает!

В моей функции я нашел действительное хранилище и беру идентификатор, соответствующий полю данных

var store = Ext.getStore(eval(c));
                                    var index = store.findRecord('data',value);
                                    if ( index != null ) {
                                        var rg = new RegExp(value,'gi');
                                        tab = tab.replace(rg,index.get('id'));
                                    }

Но когда у меня есть ')' в поле данных, функция возвращает не идентификатор, а поле данных, чем работает для других данных! Существовать дополнительный персонаж или другой?

1 Ответ

1 голос
/ 26 мая 2011

Возможно, вам придется использовать коды escape-символов для левой пары "(" и правой пары ")"

См. этот справочник ASCII .

...