Ir para conteúdo

POWERED BY:

Arquivado

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

sopranophp

Class que não é criada via javascript

Recommended Posts

Olá,


Neste pedaço de código adiciono um <tr com uma class='fg'.




var cell0 = row.insertCell(0);
var cell1 = row.insertCell(1);
var cell2 = row.insertCell(2);
var cell3 = row.insertCell(3);
var cell4 = row.insertCell(4);
var cell5 = row.insertCell(5);
var cell6 = row.insertCell(6);
var cell7 = row.insertCell(7);
cell0.innerHTML = "<tr class='fg'><td class='99'></td>";
cell1.innerHTML = "<td></td>";
cell2.innerHTML = "<td></td>";
cell3.innerHTML = "<td><select id='3' class='form-control' name='dados'>"+



Mas no momento que executo este código via javascript o html que é contruido é este:




<tr><td class="99"></td>
<td></td>
<td></td>
<td><select id="3" class="form-control" name="dados">



Porque que a class fg não é criada? E o id 3 já é criado?


Obrigado e Sucesso

Compartilhar este post


Link para o post
Compartilhar em outros sites
A tag <tr> fecha no fim, o código completo é este!

Eu pretendo colocar uma class nesta tag, a <tr> , que é para a identificar no momento em que quiser gravar ou então apaga-la. Acho que estou a pensar bem, certo?




cell0.innerHTML = "<tr><td class='99'></td>";
cell1.innerHTML = "<td></td>";
cell2.innerHTML = "<td></td>";
cell3.innerHTML = "<td><select class='form-control' name='fg'>"+
"<option value='opt'>3456</option>"+
"<option value='opt'>4235</option>"+
"<option value='opt'>2324</option>"+
"</select></td>";
cell4.innerHTML = "<td><input type='number' name='np' value='' placeholder='texto' maxlength='1' max='8' min='1'/></td>";
cell5.innerHTML = "<td></td>";
cell6.innerHTML = "<td><button type='submit' class='btn btn-default'>OK</button></td>";
cell7.innerHTML = "<td><button type='submit' class='btn btn-default'enviar</button></td></tr>";



obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos lá...

 

No seu primeiro posta você disse que seu código estava assim:

cell0.innerHTML = "<tr class='fg'><td class='99'></td>";

E agora postou assim:

cell0.innerHTML = "<tr><td class='99'></td>";

Ou seja, sem a classe fg.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara da uma olhada e ve se te ajuda em alguma coisa:

    function myCreateFunction() {
    var table = document.getElementById("corpo");
    var row = table.insertRow(0);
    //Olha aqui
    var trs = document.querySelectorAll('tr');
    trs[0].className="fg";
    

    var cell0 = row.insertCell(0);
    var cell1 = row.insertCell(1);
    var cell2 = row.insertCell(2);    
    cell0.innerHTML = "<tr><td>1</td>"; // tirei a class daqui
    cell1.innerHTML = "<td>2</td>";
    cell2.innerHTML = "<td>3</td></tr>";
} 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Funcionou :) é isso mesmo, muito obrigado

 

Me diz mais uma coisa, pf. Como faço para criar um id? Em vez de uma classe!

 

var trs = document.querySelectorAll('tr');
trs[0].className="fg";

 

Andei a ler a documentação developer.mozilla.org mas não encontrei nada.

 

Caso pretenda apagar a linha como devo fazer? O que estou a pensar é o seguinte:

 

o meu tr têm uma classe! OK! Mas caso pretenda apagar a linha?

 

Faria algo como: document.getElementById("fg").deleteRow(1);

 

Mas isto apaga-me sempre a linha 1, conclusão, se tiver 3 linhas e carregar no botão de apagar da terceira linha ele apaga a primeira!

O que estou a pensar é colocar um id na linha que será colocado no deleteRow(id)

 

O que acham?

 

obrigado

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.