0

我的代码中有 eval 的问题,在 Firefox 中我的代码可以正常工作,但在资源管理器中出现典型的失败,我不知道如何解决这个问题。

     var pintarVentanaConsulta = function(elementos){
    if((elementos !== null) && (elementos!=undefined) && (elementos!=='') && (elementos!='\n')){
        var myObject = eval('(' + elementos + ')');
        elementosData = myObject; 



        if(elementosData.TiposPapel.length<1){
            Ext.getCmp('MensajeRespuesta').setText('No se han encontrado datos para la consulta');
            Ext.getCmp('botonModificar').disable();
            Ext.getCmp('botonBaja').disable();
        }else if(elementosData.TiposPapel.length==1){
            Ext.getCmp('DPFor').setValue(elementosData.TiposPapel[0].FORM);
            Ext.getCmp('DPVer').setValue(elementosData.TiposPapel[0].VERFOR);
            Ext.getCmp('DPIdioma').setValue(elementosData.TiposPapel[0].IDILIT);
            Ext.getCmp('DPDescrip').setValue(elementosData.TiposPapel[0].DESIND);

            var mensaje = 'FECH ALTA:  ' +  elementosData.TiposPapel[0].FECALT;
            Ext.getCmp('DFecalt').setText(mensaje) + ' \n ';

            var mensaje2 ='\n\n\n   FECHA MODIFICACION:  ' + elementosData.TiposPapel[0].FECMOD;
            Ext.getCmp('DFecmod').setText(mensaje2) + ' \n ';

            var mensaje3 = '\n\n\n  TERMINAL MODIFICACION:  ' + elementosData.TiposPapel[0].TERMOD;
            Ext.getCmp('DTermod').setText(mensaje3) + ' \n ';

            var mensaje4 = '\n\n\n   HORA MODIFICACION:  ' +elementosData.TiposPapel[0].HORMOD;
            Ext.getCmp('DHormod').setText(mensaje4) + ' \n ';

            Ext.getCmp('botonModificar').enable();
            Ext.getCmp('botonBaja').enable();


        }else{
            Ext.getCmp('botonModificar').disable();
            Ext.getCmp('botonBaja').disable();
            storeTabla.removeAll();
            for(var i=0;i<elementosData.TiposPapel.length;i++){
                storeTabla.add( new Registro(elementosData.TiposPapel[i]) );  
            }                           

            var ventana=Ext.create('widget.window',{
                title: 'Resultado Consulta',
                closable: true,
                closeAction: 'hide',
                width: '100%',
                minWidth: '100%',
                height: '100%',
                layout: {
                    type: 'border'

                },
                modal: true,
                autoScroll:true,
                items: [panelResultadoConsulta]
            });

            ventana.show();             
        }
    }else{
        Ext.getCmp('MensajePrueba').setText('No se han encontrado datos para la consulta');
        Ext.getCmp('botonModificar').disable();
        Ext.getCmp('botonBaja').disable();
    }
};

谢谢大家,我正在寻找使用 eval 的替代解决方案。

4

0 回答 0