Foros del Web » Programando para Internet » PHP »

Combos combinados

Estas en el tema de Combos combinados en el foro de PHP en Foros del Web. Hola tengo 3 combos combinados los cuales funcionan con un javascript que los completa. Los combos funcionan perfectamente pero no me guardan los valores que ...
  #1 (permalink)  
Antiguo 25/05/2011, 11:11
 
Fecha de Ingreso: enero-2010
Mensajes: 150
Antigüedad: 14 años, 3 meses
Puntos: 0
Combos combinados

Hola tengo 3 combos combinados los cuales funcionan con un javascript que los completa. Los combos funcionan perfectamente pero no me guardan los valores que se seleccionan a la base de datos. Donde está el error?? Me falta algun onchange en los selects? Como haria para pasar lo valores seleccionados a la bd??

Código HTML:
Ver original
  1. <script language="javascript" src="chainedmenu.js"></script>
  2. <script language="javascript" src="config.js"></script>
  3.  
  4. <form action="subeProductos.php" method="post" enctype="multipart/form-data" name="form1" id="form1" onsubmit="return comprobar(this)">
  5.       <p align="left">      <br>
  6.       <span class="Estilo2">Titulo:</span>      
  7.       <input name="textTitulo" type="text" id="textTitulo" size="70" maxlength="69">
  8.         </p>
  9.         <p align="left"><span class="Estilo2">C&oacute;digo Producto:</span>
  10.           <input name="textCodigo" type="text" id="textCodigo" size="20" maxlength="20">
  11.           <span class="Estilo23"><span class="Estilo22">(Opcional) </span></span> </p>
  12.         <p align="left"> <span class="Estilo24">Rubro:</span>          
  13.           <select name="menurubro" id="menurubro" class="select">
  14.           </select>
  15.        
  16.         </p>
  17.         <p align="left"><span class="Estilo24">Categor&iacute;a:</span>          
  18.           <select name="menucategoria" id="menucategoria" class="select">
  19.           </select>
  20.         </p>
  21.         <p align="left"><span class="Estilo24">Subcategor&iacute;a:</span>
  22.           <select name="menusubcategoria" id="menusubcategoria" class="select">
  23.           </select>
  24.         </p>
  25.         <p align="left"> <span class="Estilo2">Descripción de Oferta: </span><span class="Estilo23"><span class="Estilo22">(Hasta 278 caracteres) </span></span></p>
  26.         <p align="left">
  27.           <textarea name="textDescripcion" cols="70" rows="8" id="textDescripcion" onKeyUp="return maximaLongitud(this,278)"></textarea>
  28.         </p>
  29.         <p align="left"><span class="Estilo2">Foto:
  30.             <input name="archivo" type="file" id="archivo" size="50" />
  31.           </span><span class="Estilo9">(opcional) - (an:228px al:175px)</span></p>
  32.         <p>&nbsp;</p>
  33.         <p align="center" class="Estilo2">            
  34.           <input name="submit" type="submit" value="Guardar Producto">
  35.           <input name="action" type="hidden" value="upload" />
  36.         </p>
  37.         </div>
  38.     </form>

Código Javascript:
Ver original
  1. var _disable_empty_list=false;
  2. var _hide_empty_list=false;
  3.  
  4.  
  5. var onclickaction="alert"
  6.  
  7. function goListGroup(){
  8. for (i=arguments.length-1;i>=0; i--){
  9. if (arguments[i].selectedIndex!=-1){
  10. var selectedOptionvalue=arguments[i].options[arguments[i].selectedIndex].value
  11. if (selectedOptionvalue!=""){
  12. if (onclickaction=="alert")
  13. alert(selectedOptionvalue)
  14. else if (newwindow==1)
  15. window.open(selectedOptionvalue)
  16. else
  17. window.location=selectedOptionvalue
  18. break
  19. }
  20. }
  21. }
  22. }
  23.  
  24.  
  25.  
  26. if (typeof(disable_empty_list)=="undefined") { disable_empty_list=_disable_empty_list; }
  27. if (typeof(hide_empty_list)=="undefined") { hide_empty_list=_hide_empty_list; }
  28.  
  29. var cs_goodContent=true, cs_M="M", cs_L="L", cs_curTop=null, cs_curSub=null;
  30.  
  31. function cs_findOBJ(obj,n) {
  32.   for (var i=0; i<obj.length; i++) {
  33.     if (obj[i].name==n) { return obj[i]; }
  34.   }
  35.   return null;
  36. }
  37. function cs_findContent(n) { return cs_findOBJ(cs_content,n); }
  38.  
  39. function cs_findM(m,n) {
  40.   if (m.name==n) { return m; }
  41.  
  42.   var sm=null;
  43.   for (var i=0; i<m.items.length; i++) {
  44.     if (m.items[i].type==cs_M) {
  45.       sm=cs_findM(m.items[i],n);
  46.       if (sm!=null) { break; }
  47.     }
  48.   }
  49.   return sm;
  50. }
  51. function cs_findMenu(n) { return (cs_curSub!=null && cs_curSub.name==n)?cs_curSub:cs_findM(cs_curTop,n); }
  52.  
  53. function cs_contentOBJ(n,obj){ this.name=n; this.menu=obj; this.lists=new Array(); this.cookie=""; }; cs_content=new Array();
  54. function cs_topmenuOBJ(tm) { this.name=tm; this.items=new Array(); this.df=0; this.addM=cs_addM; this.addL=cs_addL; }
  55. function cs_submenuOBJ(dis,link,sub) {
  56.   this.name=sub;
  57.   this.type=cs_M; this.dis=dis; this.link=link; this.df=0;
  58.  
  59.   var x=cs_findMenu(sub);
  60.   this.items=x==null?new Array():x.items;
  61.  
  62.   this.addM=cs_addM; this.addL=cs_addL;
  63. }
  64. function cs_linkOBJ(dis,link) { this.type=cs_L; this.dis=dis; this.link=link; }
  65.  
  66. function cs_addM(dis,link,sub) { this.items[this.items.length]=new cs_submenuOBJ(dis,link,sub); }
  67. function cs_addL(dis,link) { this.items[this.items.length]=new cs_linkOBJ(dis,link); }
  68.  
  69. function cs_showMsg(msg) { window.status=msg; }
  70. function cs_badContent(n) { cs_goodContent=false; cs_showMsg("["+n+"] Not Found."); }
  71.  
  72. function cs_optionOBJ(text,value) { this.text=text; this.value=value; }
  73. function cs_emptyList(list) { for (var i=list.options.length-1; i>=0; i--) { list.options[i]=null; } }
  74. function cs_refreshList(list,opt,df) {
  75.   cs_emptyList(list);
  76.  
  77.   for (var i=0; i<opt.length; i++) {
  78.     list.options[i]=new Option(opt[i].text, opt[i].value);
  79.   }
  80.  
  81.   if (opt.length>0) {
  82.     list.selectedIndex=df;
  83.   }
  84. }
  85. function cs_getOptions(menu) {
  86.   var opt=new Array();
  87.   for (var i=0; i<menu.items.length; i++) {
  88.     opt[i]=new cs_optionOBJ(menu.items[i].dis, menu.items[i].link);
  89.   }
  90.   return opt;
  91. }
  92. function cs_updateListGroup(content,idx,sidx,mode) {
  93.   var i=0, curItem=null, menu=content.menu;
  94.  
  95.   while (i<idx) {
  96.     menu=menu.items[content.lists[i++].selectedIndex];
  97.   }
  98.  
  99.   if (menu.items[sidx].type==cs_M && idx<content.lists.length-1) {
  100.     var df=cs_getIdx(mode,content.cookie,idx+1,menu.items[sidx].df);
  101.  
  102.     cs_refreshList(content.lists[idx+1], cs_getOptions(menu.items[sidx]), df);
  103.     if (content.cookie) {
  104.       cs_setCookie(content.cookie+"_"+(idx+1),df);
  105.     }
  106.  
  107.     if (idx+1<content.lists.length) {
  108.       if (disable_empty_list) {
  109.         content.lists[idx+1].disabled=false;
  110.       }
  111.       if (hide_empty_list) {
  112.         content.lists[idx+1].style.display="";
  113.       }
  114.  
  115.       cs_updateListGroup(content,idx+1,df,mode);
  116.     }
  117.   }
  118.   else {
  119.     for (var s=idx+1; s<content.lists.length; s++) {
  120.       cs_emptyList(content.lists[s]);
  121.  
  122.       if (disable_empty_list) {
  123.         content.lists[s].disabled=true;
  124.       }
  125.       if (hide_empty_list) {
  126.         content.lists[s].style.display="none";
  127.       }
  128.  
  129.       if (content.cookie) {
  130.         cs_setCookie(content.cookie+"_"+s,"");
  131.       }
  132.     }
  133.   }
  134. }
  135. function cs_initListGroup(content,mode) {
  136.   var df=cs_getIdx(mode,content.cookie,0,content.menu.df);
  137.  
  138.   cs_refreshList(content.lists[0], cs_getOptions(content.menu), df);
  139.   if (content.cookie) {
  140.     cs_setCookie(content.cookie+"_"+0,df);
  141.   }
  142.  
  143.   cs_updateListGroup(content,0,df,mode);
  144. }
  145.  
  146. function cs_updateList() {
  147.   var content=this.content;
  148.   for (var i=0; i<content.lists.length; i++) {
  149.     if (content.lists[i]==this) {
  150.       if (content.cookie) {
  151.         cs_setCookie(content.cookie+"_"+i,this.selectedIndex);
  152.       }
  153.  
  154.       if (i<content.lists.length-1) {
  155.         cs_updateListGroup(content,i,this.selectedIndex,"");
  156.       }
  157.     }
  158.   }
  159. }
  160.  
  161. function cs_getIdx(mode,name,idx,df) {
  162.   if (mode) {
  163.     var cs_idx=cs_getCookie(name+"_"+idx);
  164.     if (cs_idx!="") {
  165.       df=parseInt(cs_idx);
  166.     }
  167.   }
  168.   return df;
  169. }
  170.  
  171. function _setCookie(name, value) {
  172.   document.cookie=name+"="+value;
  173. }
  174. function cs_setCookie(name, value) {
  175.   setTimeout("_setCookie('"+name+"','"+value+"')",0);
  176. }
  177.  
  178. function cs_getCookie(name) {
  179.   var cookieRE=new RegExp(name+"=([^;]+)");
  180.   if (document.cookie.search(cookieRE)!=-1) {
  181.     return RegExp.$1;
  182.   }
  183.   else {
  184.     return "";
  185.   }
  186. }
  187.  
  188. // ----
  189. function addListGroup(n,tm) {
  190.   if (cs_goodContent) {
  191.     cs_curTop=new cs_topmenuOBJ(tm); cs_curSub=null;
  192.  
  193.     var c=cs_findContent(n);
  194.     if (c==null) {
  195.       cs_content[cs_content.length]=new cs_contentOBJ(n,cs_curTop);
  196.     }
  197.     else {
  198.       delete(c.menu); c.menu=cs_curTop;
  199.     }
  200.   }
  201. }
  202.  
  203. function addList(n,dis,link,sub,df) {
  204.   if (cs_goodContent) {
  205.     cs_curSub=cs_findMenu(n);
  206.  
  207.     if (cs_curSub!=null) {
  208.       cs_curSub.addM(dis,link||"",sub);
  209.       if (typeof(df)!="undefined") { cs_curSub.df=cs_curSub.items.length-1; }
  210.     }
  211.     else {
  212.       cs_badContent(n);
  213.     }
  214.   }
  215. }
  216.  
  217. function addOption(n,dis,link,df) {
  218.   if (cs_goodContent) {
  219.     cs_curSub=cs_findMenu(n);
  220.  
  221.     if (cs_curSub!=null) {
  222.       cs_curSub.addL(dis,link||"");
  223.       if (typeof(df)!="undefined") { cs_curSub.df=cs_curSub.items.length-1; }
  224.     }
  225.     else {
  226.       cs_badContent(n);
  227.     }
  228.   }
  229. }
  230.  
  231. function initListGroup(n) {
  232.   var _content=cs_findContent(n), count=0;
  233.   if (_content!=null) {
  234.     content=new cs_contentOBJ("cs_"+n,_content.menu);
  235.     cs_content[cs_content.length]=content;
  236.  
  237.     for (var i=1; i<initListGroup.arguments.length; i++) {
  238.       if (typeof(arguments[i])=="object" && arguments[i].tagName && arguments[i].tagName=="SELECT") {
  239.         content.lists[count]=arguments[i];
  240.  
  241.         arguments[i].onchange=cs_updateList;
  242.         arguments[i].content=content; arguments[i].idx=count++;
  243.       }
  244.       else if (typeof(arguments[i])=="string" && /^[a-zA-Z_]\w*$/.test(arguments[i])) {
  245.         content.cookie=arguments[i];
  246.       }
  247.     }
  248.  
  249.     if (content.lists.length>0) {
  250.       cs_initListGroup(content,content.cookie);
  251.     }
  252.   }
  253. }
  254.  
  255. function resetListGroup(n) {
  256.   var content=cs_findContent("cs_"+n);
  257.   if (content!=null && content.lists.length>0) {
  258.     cs_initListGroup(content,"");
  259.   }
  260. }

Etiquetas: combinados, combos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:00.