Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

juva

como eu uso 2 onChange?

Recommended Posts

como eu uso 2 onChange

 

fiz assim, mas não rola

<select name="cod" id="cod" onChange="carregarr();" onChange="carregar();">

Compartilhar este post


Link para o post
Compartilhar em outros sites

amigo veja se consegue me ajudar.

 

Tenho duas funções que fazem a mesma coisa.

 

<script language="JavaScript" type="text/JavaScript">	function carregar(){	Combo1 = document.cad.codcampanha; //ALTERE AQUI PARA SEU FORM E 1º SELECT	Combo2 = document.cad.cidade; //ALTERE AQUI PARA SEU FORM E 2º SELECT	var url;	url = 'remote_relatorio_cidade.asp?codcampanha='+Combo1[Combo1.selectedIndex].value;	Combo2.options.length = 0;addItem(Combo2,"Aguarde...carregando","",false,Combo2.length)	myIframe.location = url;//Combo2.focus()}	function inicia(){local1 = new Array();var maximo1, i, campo1;local1 = myIframe.loc;campo1 = document.cad.cidade;maximo1 = local1.length;document.cad.cidade.options.length = 0;addItem(campo1,'','',false,campo1.length);for (i=0;i<maximo1;i++){  addItem(campo1,local1[i][1],local1[i][0],false,campo1.length);}}function addItem(obj,strText,strValue,blSel,intPos){	 var newOpt,i,ArTemp,selIndex;	 selIndex = (blSel)?intPos:obj.selectedIndex;	 newOpt = new Option(strText,strValue);	 Len = obj.options.length+1	 if (intPos > Len) return	 obj.options.length = Len	 if (intPos != Len) {		  ArTemp = new Array();		  for(i=intPos;i<obj.options.length-1;i++)			   ArTemp[i] = Array(obj.options[i].text,obj.options[i].value);		  for(i=intPos+1;i<Len;i++)			   obj.options[i] = new Option(ArTemp[i-1][0],ArTemp[i-1][1]);	 }	 obj.options[intPos] = newOpt;	 if (selIndex > intPos)		  obj.selectedIndex = selIndex+1;	 else if (selIndex == intPos)  		  obj.selectedIndex = intPos;}</script>
<script language="JavaScript" type="text/JavaScript">	function carregarr(){	Combo3 = document.cad.codcampanha; //ALTERE AQUI PARA SEU FORM E 1º SELECT	Combo4 = document.cad.fantasia; //ALTERE AQUI PARA SEU FORM E 2º SELECT	var url;	url = 'remote_relatorio_coligada.asp?codcampanha='+Combo3[Combo3.selectedIndex].value;	Combo4.options.length = 0;addItem(Combo4,"Aguarde...carregando","",false,Combo4.length)	myIframe.location = url;//Combo2.focus()}	function inicia(){local1 = new Array();var maximo1, i, campo1;local1 = myIframe.loc;campo1 = document.cad.fantasia;maximo1 = local1.length;document.cad.fantasia.options.length = 0;addItem(campo1,'','',false,campo1.length);for (i=0;i<maximo1;i++){  addItemm(campo1,local1[i][1],local1[i][0],false,campo1.length);}}function addItemm(obj,strText,strValue,blSel,intPos){	 var newOpt,i,ArTemp,selIndex;	 selIndex = (blSel)?intPos:obj.selectedIndex;	 newOpt = new Option(strText,strValue);	 Len = obj.options.length+1	 if (intPos > Len) return	 obj.options.length = Len	 if (intPos != Len) {		  ArTemp = new Array();		  for(i=intPos;i<obj.options.length-1;i++)			   ArTemp[i] = Array(obj.options[i].text,obj.options[i].value);		  for(i=intPos+1;i<Len;i++)			   obj.options[i] = new Option(ArTemp[i-1][0],ArTemp[i-1][1]);	 }	 obj.options[intPos] = newOpt;	 if (selIndex > intPos)		  obj.selectedIndex = selIndex+1;	 else if (selIndex == intPos)  		  obj.selectedIndex = intPos;}</script>

separadas elas funcionam, mas ao invés de cada função colocar a sub-opção no local certo, ela coloca no mesmo select e juntas não funciona.

Compartilhar este post


Link para o post
Compartilhar em outros sites

perai dexa ve c entendi, as 2 funçoes saum =, a unica coisa q muda saum os combos, é isso?ms pq você naum acopla as 2 na msm funçoes?tá dando problema!ms naum to entendo mto bem sua lógika, o q faz estes combos?

Compartilhar este post


Link para o post
Compartilhar em outros sites

As duas funções são basicamente para a mesma coisa.A pessoa tem que escolher o cod da campanha e um select iria ser alimentado com as cidades dessa campanha e ao mesmo tempo iria ser alimentado outro select com as parceiras dessa campanha.É isso que as funções fazem, mas eu não consigo uni-las

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tentei unir as duas, mas não sai da msg carregando.

 

<script language="JavaScript" type="text/JavaScript">	function carregar(){	Combo1 = document.cad.codcampanha; //ALTERE AQUI PARA SEU FORM E 1º SELECT	Combo2 = document.cad.cidade; //ALTERE AQUI PARA SEU FORM E 2º SELECTCombo4 = document.cad.fantasia;   //ALTERE AQUI PARA SEU FORM E 3º SELECTvar url;	url = 'remote_relatorio_cidade.asp?codcampanha='+Combo1[Combo1.selectedIndex].value;	Combo2.options.length = 0;addItem(Combo2,"Aguarde...carregando","",false,Combo2.length)	myIframe.location = url;//Combo2.focus()var url2;	url2 = 'remote_relatorio_coligada.asp?codcampanha='+Combo1[Combo1.selectedIndex].value;	Combo4.options.length = 0;addItemm(Combo4,"Aguarde...carregando","",false,Combo4.length)	myIframe.location = url;function inicia(){local1 = new Array();var maximo1, i, campo1;local1 = myIframe.loc;campo1 = document.cad.cidade;maximo1 = local1.length;document.cad.cidade.options.length = 0;addItem(campo1,'','',false,campo1.length);for (i=0;i<maximo1;i++){  addItem(campo1,local1[i][1],local1[i][0],false,campo1.length);}}function iniciaa(){local1 = new Array();var maximo1, i, campo1;local1 = myIframe.loc;campo1 = document.cad.fantasia;maximo1 = local1.length;document.cad.fantasia.options.length = 0;addItemm(campo1,'','',false,campo1.length);for (i=0;i<maximo1;i++){  addItemm(campo1,local1[i][1],local1[i][0],false,campo1.length);}}function addItem(obj,strText,strValue,blSel,intPos){	 var newOpt,i,ArTemp,selIndex;	 selIndex = (blSel)?intPos:obj.selectedIndex;	 newOpt = new Option(strText,strValue);	 Len = obj.options.length+1	 if (intPos > Len) return	 obj.options.length = Len	 if (intPos != Len) {		  ArTemp = new Array();		  for(i=intPos;i<obj.options.length-1;i++)			   ArTemp[i] = Array(obj.options[i].text,obj.options[i].value);		  for(i=intPos+1;i<Len;i++)			   obj.options[i] = new Option(ArTemp[i-1][0],ArTemp[i-1][1]);	 }	 obj.options[intPos] = newOpt;	 if (selIndex > intPos)		  obj.selectedIndex = selIndex+1;	 else if (selIndex == intPos)  		  obj.selectedIndex = intPos;}}function addItemm(obj,strText,strValue,blSel,intPos){	 var newOpt,i,ArTemp,selIndex;	 selIndex = (blSel)?intPos:obj.selectedIndex;	 newOpt = new Option(strText,strValue);	 Len = obj.options.length+1	 if (intPos > Len) return	 obj.options.length = Len	 if (intPos != Len) {		  ArTemp = new Array();		  for(i=intPos;i<obj.options.length-1;i++)			   ArTemp[i] = Array(obj.options[i].text,obj.options[i].value);		  for(i=intPos+1;i<Len;i++)			   obj.options[i] = new Option(ArTemp[i-1][0],ArTemp[i-1][1]);	 }	 obj.options[intPos] = newOpt;	 if (selIndex > intPos)		  obj.selectedIndex = selIndex+1;	 else if (selIndex == intPos)  		  obj.selectedIndex = intPos;}</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo está funcionando as funções quando uso separadamente, somente quando tento usa-las juntas que apenas uma funciona.Quando uso o meu primeiro combo com o onChange desse jeito onChange='carregar();' da certo e quando uso desse jeito onChange='carregar1();' também da certo, mas quando uso desse jeito onChange='carregar(),carregar1()' só carrega um combo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.