Dwr erro no innerHtml Internet Explorer

1 resposta
B

Boa tarde

tenho essas 2 funcoes em java script aqui

essa aiq ue identifica qual o browser do usuário (que não estou usando )

function navegador(){
 	if (navigator.appName == "Microsoft Internet Explorer")
     {
 	   return false;
 	   
 	}
 	if(navigator.appName == "Netscape")
 	{
 	   return true;
 	   
 	}
 }

e essa aqui que usa DWR pra popular um combo com as cidades de um determinando estado

function busca(){

		    var Select = document.getElementById('idcidade');
			var id = document.getElementById('estado');
			
			
			if (id.value != '0'){
				CidadeDWRService.getByEstado(id.value, {
					callback:function(retorno) {
					
					var obj = retorno.split(";");
						
						
						
						var s1 =obj[0];
						var s2 =obj[1];
						
						
						var nomes =s1.split("-");
						var id =s2.split("-");
						 var x=0;
                          var valida=0;
                          var html="";



                          
                          if (nomes.length==1){
					         html=html+"<option value='0'>selecione</option>";
					         document.getElementById("idcidade").innerHTML = html;
					   }
					     else{
					         for (x=1; x<nomes.length; x++){
                             html=html+"<option value='"+id[x]+"'>"+nomes[x]+"</option>";
                          }
                          
                           
                             document.getElementById('idcidade').innerHTML = html;
					    }
					      
                         
					    }
				});
				
			}
			else {


				
			}
				
		}

no firefox netscape e outros browser funcciona perfeitamente porem no internet explorer ele não funciona (Testei no internet explorer 7.0)

tentei preencher o combo com o inner html com isso aqui para o internet explorer(Usando a função que testa o navegador)

document.all("nomdo do select ") e nada algeum sabe me dizer como fazer esse combo funcionar ono internet explorer

1 Resposta

mathiasnw

Usa o DWR utils para popular o SELECT.
A unica coisa que voce precisa é retornar um Map<String,String> .
onde a chave vai ser o value, e o objeto do map vai no texto a ser exibido.

function callBackMapClientes(map){ DWRUtil.removeAllOptions("selectclie"); DWRUtil.addOptions("selectclie", map); }

o innerHtml é problemático no IE, nao funciona para tabelas e outras coisas tambem.

Criado 1 de julho de 2009
Ultima resposta 1 de jul. de 2009
Respostas 1
Participantes 2