Ir para conteúdo
Fórum Script Brasil

renatavp

Membros
  • Total de itens

    2
  • Registro em

  • Última visita

Tudo que renatavp postou

  1. Bom dia, rapazes. Vamos ver se alguém pode me ajudar? Estou tentando remover campos que estão dentro de um loop vindo bd. Os campos/registros: <% for i = 0 to (v) next do while not rs.eof itens = rs("itens") codigo = rs("codigo") valoru = rs("valoru") icmsc = rs("icmsc") outrasc = rs("outrasc") precocu = rs("precocu") quant = rs("quant") subtotalc = rs("subtotalc") valorv = rs("valorv") icmsv = rs("icmsv") comissao = rs("comissao") outrasv = rs("outrasv") impostosv = rs("impostosv") precovu = rs("precovu") subtotalv = rs("subtotalv") icmsvvl = rs("icmsvvl") comissaovvl = rs("comissaovvl") impostosvvl = rs("impostosvvl") outrosvvl = rs("outrosvvl") %> <div id="parentDiv"> <div id="childDiv<%=itens%>"> <table width="1155" border="0" cellpadding="0" cellspacing="2" bordercolor="#FFFFFF" style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:11px"> <tr> <td width="20" height="25" bgcolor="#CCCCCC"><div align="left"> <label> <input type="text" name="item<%=itens%>" id="item<%=itens%>" style="width:18px; font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px; color:#6699FF; border: #CCCCCC 1px solid" value="<%=itens%>"/> </label> </div></td> <td width="86" height="25" bgcolor="#CCCCCC"><div align="left"> <input type="text" name="codigo<%=itens%>" id="codigo<%=itens%>" style="width:80px; font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px; color:#000000; border: #CCCCCC 1px solid; background-color:#CCCCCC" value="<%=codigo%>"/> </div></td> <td width="90" height="25" bgcolor="#CCCCCC"><div align="left"> R$ <input type="text" name="valoru<%=itens%>" id="valoru<%=itens%>;" style="width:70px; font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px; color:#000000; border: #CCCCCC 1px solid; background-color:#CCCCCC" value="<%=valoru%>" onChange="somac(<%=itens%>)" onBlur="orcamentoc()" /> </div></td> ... E assim por diante. Agora estou tentando criar uma função js pra deletar esses campos. A função: <script type="text/javascript"> function removeElement(i){ var v = <%=v%> for (i=0;i<v;i++) { if (document.getElementById("childDiv"+i)) { var childDiv = document.getElementById("childDiv"+i); var parent = document.getElementById("parentDiv"); parent.removeChild(childDiv); } else { alert("Child div \n» "+i+"\nhas already been removed or does not exist."); return false; } } } </script> Que é chamada assim: <input type="button" value="-" onClick="removeElement(<%=itens%>)"> Lembrando que os outros campos dinâmicos são adicionados com esse js: <script language="JavaScript" type="text/javascript"> var v = <%=v%> //Não altere esses valores! var x = v+1 var i = 0; var iCampos = 1; var hiddenc; //Definindo quantos campos poderão ser criados (máximo); var iCamposTotal = 30; //Função que adiciona os campos; function addInput() { if (x <= iCamposTotal) { hiddenc = document.getElementById("hiddenc"); //Criando uma variável que armazenará as informações da linha que será criada. //Os campos estão sendo colocados no interior de uma div, pois a linha contém muitos elementos; //Basta excluir a div, para excluir todos os elementos da linha; var texto = "<div id='linha"+x+"'><input type='hidden' name='texto"+x+"' id='texto"+x+"' value=''><table width='1155' border='0' cellpadding='2' cellspacing='2' bordercolor='#FFFFFF' style='font-family:Verdana, Arial, Helvetica, sans-serif; font-size:11px'><tr><td height='25' bgcolor='#CCCCCC'><div align='left'><label><input type='text' name='item"+x+"' id='item"+x+"' value='"+x+"' style='width:18px; font-family:Verdana, Arial, Helvetica, sans-serif; font-size:9px; color:#6699FF' readonly='readonly'/></label></div></td> (E por aí vai… mais isso:) //Capturando a div principal, na qual os novos divs serão inseridos: var my_div = document.getElementById('my_div'); my_div.innerHTML = my_div.innerHTML+texto; //Escrevendo no hidden os ids que serão passados via POST; //No código ASP ou PHP, você poderá pegar esses valores com um split, por exemplo; if (hiddenc.value == "") { document.getElementById("hiddenc").value = x; }else{ document.getElementById("hiddenc").value += ","+x; } x++; iCampos++; } } E deletados com esse js (que funciona, deleta): //Função que remove os campos; function removeInput(e) { var pai = document.getElementById('my_div'); var filho = document.getElementById(e); hiddenc = document.getElementById("hiddenc"); var campoValor = document.getElementById("texto"+e.substring(5)).value; var lastNumber = hiddenc.value.substring(hiddenc.value.lastIndexOf(",")+1); if(confirm("O item será excluído permanentemente!Deseja prosseguir?")){ var removido = pai.removeChild(filho); //Removendo o valor de hiddenc: if (e.substring(5) == hiddenc.value) { hiddenc.value = hiddenc.value.replace(e.substring(5),""); }else if(e.substring(5) == lastNumber) { hiddenc.value = hiddenc.value.replace(","+e.substring(5),""); }else{ hiddenc.value = hiddenc.value.replace(e.substring(5)+",",""); } x--; iCampos--; } } Então, tenho que deletar os campos gerados pelo bd e diminuir o número de campos geral (ou seja: tem 10 campos no loop do bd + 2 dinâmicos = 12 campos geral. Se deletar 1 dinâmico, campos geral = 11. Ou, outra hipótese, se deletar 2 no loop do bd, campos geral = 10). Alguém pode me ajudar?
  2. tenho uma função de calculadora, mas preciso que os valores sejam formatados em valor monetário. É isso: <script language="JavaScript"> function somac(i){ document.getElementById("subtotalc"+ i).value = '0' var valoru = parseFloat(document.getElementById("valoru"+ i).value); var quant = parseFloat(document.getElementById("quant"+ i).value); var icmsc = parseFloat(document.getElementById("icmsc"+ i).value); var outrasc = parseFloat(document.getElementById("outrasc"+ i).value); var valorxquant = valoru * quant var porcento = icmsc / '100' * valorxquant document.getElementById("subtotalc"+ i).value = valorxquant - porcento + outrasc; } </SCRIPT> É só pra pessoa formatar normal os números tipo 10.450,23... E sair o resultado certo. Sei que tem que usar o replace aí, só não sei como! Podem me ajudar?
×
×
  • Criar Novo...