Cara estou com uma duvida, tem como eu bloquear a edição dos elementos que estao dentro de uma div.
por exemplo a caixa de texto , tem como eu colocar essa caixa de texto apenas para visualisação, para que eu nao possa colocar nenhuma informçção dentro dela, ou seja , ela estaria ali só para exibição de algo e nao seria permitido colocar nada nela ?
Obg, e se algum tiver algum exemplo me mostrando como é que eu faço isso…
É assim, eu vou ter 4 abas, e em cada aba um formulario, e esse formulario vai ser gerado conforme o outro usuario desenvolver, mais em frente explico passo a passo.
3 dessas abas o usuario não vai poder editar, e apenas uma delas o cara vai poder editar o formulario.
Explicando resumidanmente o meu problema:
1° O dono da empresa cria um formulario beleza;
2° o tal formulario qeue o dono implementou vai ser publicado em quatro abas. em tres dessas abas só vai ser disponivel a visualização do formulario e em apenas uma o cara vai conseguir mexer e editar o formulario.
esse é o meu problema, pois tipo eu nao vou poder colocar disable nos elementos direto pois, quando gerar não vou saber de qual aba é entendeu.
por isso quero saber se atraves da div eu consigo limitar essa edição.
Muitoo obrigado estarei tentando as opniões citadas.
Cara, infelizmente eu conheço bem pouco de JSP.
Mas se eu nao me engano, tu pode escrever as funções JS como se fossem códigos HTML normalmente (Claro que respeitando as devidas sintaxes, e estando dentro das devidas tags) pois é o browser que ira interpreta-las
Mas mesmo os Ids dos inputs serão dinamicos?
Pq se não tu poderia colocar algum padrão neles tipo, inputDivAba01…ou algo do tipo, ai tu saberia pelo id a qual div pertence.
Se não for possível, a solução do robsonsm talvez seja a mais indicada.
Através da Div é possivel sim tu bloquear os inputs. Só que tu precisa que pelo menos os Id’s delas sejam fixos. Ai tu pegaria esse objeto DIV , percorreia os Nós Input, por exemplo, e daria disabled em cada um.
Então Ygor, agora estamos chegando a uma conclusão, pois os elementos serão dinamicos, nunca serão os mesmo id, mas a div eu acho que eu tenho como colocar fixo.
Mas vc teria algum exemplo de como eu percorrer o nó ?
Eu não sei como esta a disposição do seu código, mas se tu conseguir aplicar a solução do robsonsm, ficaria muito mais elegante.
Mas de qualquer forma eu vou postar um exemplo rapido que eu fiz (e não muito praticavel hehehe) mas acho que vai te dar uma idéia de como fazer.
HTML
<div id="divTeste">
<input type="text" value="aqui1"></input>
<input type="password" value="aqui2"></input>
<input type="text" value="aqui3"></input>
<input type="password" value="aqui4"></input>
<input type="text" value="aqui5"></input>
<input type="password" value="aqui6"></input>
<input type="text" value="aqui7"></input>
<input type="password" value="aqui8"></input>
</div>
<input type="button" value="Me clique" onclick="teste()"/>
JavaScript
function teste(){
var d = document.getElementById('divTeste').getElementsByTagName('input');
for(var i = 0; i<d.length;i++){
alert(d[i].value);
d[i].disabled= !d[i].disabled;
}
}
O Código primeiro busca o elemento chamado divTeste e depois percorre toda a arvore “filha” desse componente em busta de elementos com a tag Input, e adiciona esses elementos em um array. Depois itera esse array, dando alert nos valores que estão dentro texto e ativando/desativando os campos.