load select from url method

Intento de hacer una function que cargue desde url

by Martin Murciego

JavaScript

function cargarSelect2(idSelect, urlList, campo_mostrar, dataSourceProperty, initValueSelectionId = null, widthSelect = '31ch', formatListItems = null, formatSelectedItem = null, urlAdd = null, closeOnSelect = null, idAttribute = 'id'){

              try{

                  //idSelect = idSelect.replace('#', '');
                  var select = $(idSelect);

                $.getJSON( urlList, function (data){
                      //console.log('data de ' + idSelect + ': ', data);
                      //data = JSON.parse(data);
                      //console.log("resolveObjectPath('" + dataSourceProperty + ", " + data + "): ", resolveObjectPath(dataSourceProperty, data));
                      var campo;
                      var arreglo =[];
                      var srcPropiedades, srcDeepPropiedades, objText;
                      campo_mostrar = campo_mostrar.trim(); //elimina espacios principio y final
                      srcPropiedades = campo_mostrar.split(',');
                      //console.log('Campos a mostrar: ', campo_mostrar, ', srcPropiedades: ', srcPropiedades);
                      //console.log('srcPropiedades.length: ', srcPropiedades.length);

                      for ( var i in resolveObjectPath(dataSourceProperty, data) ){ //registros / filas de lo recuperado de server
                          objText =  '';
                          if ( srcPropiedades.length === 0 ) {
                              objText = resolveObjectPath(dataSourceProperty, data)[i] [campo_mostrar];
                          } else if ( srcPropiedades.length >= 1 ) {
                              for ( var j = 0; j < srcPropiedades.length; j++ ){
                                  //console.log('Object.values(): ', data, Object.values(data)); //para no imprimir [object] [object]
                                  //console.log( 'Path Object: ', resolveObjectPath('datos.organizaciones', data)[i]['nombre']); //Anda bien
                                 ...