Ir para conteúdo

POWERED BY:

Arquivado

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

Thiago_ASP

Firefox

Recommended Posts

Fala Galera, tenho uma problema, meu script funciona perfeitamente no IE, mas no FireFox, num vai nem com reza brava...

alguém sabe pq???? http://forum.imasters.com.br/public/style_emoticons/default/cry.gif

abraços

Thiago

 

<html><head><script type="text/javascript">function SoNumero(e,event) {var tecla = event.keyCode?event.keyCode:(event.which?event.which:event.charCode);if (tecla > 47 && tecla < 58) // numeros de 0 a 9return true;else{if (tecla != 8) // backspaceevent.keyCode = 0;elsereturn true;}}var contador = 0;function excluirLinha(IdProcurado){var continuar = window.confirm('Deseja realmete excluir esse item?');while(continuar)	{	var ContLin = 0;	if( TabelaItem.rows.length > 2 )		for( ContLin = 0; ContLin < TabelaItem.rows.length-1; ContLin++ )			{			if( document.formPedido.IdentLinha[ContLin].value == IdProcurado )			break;			}	TabelaItem.deleteRow(ContLin+1);	continuar = false;	}}function VerificaDuplicata(Cbo,IdCbo) {var Duplicado = false;if( TabelaItem.rows.length > 2 )	{	for( ContLin = 0; ContLin < TabelaItem.rows.length-1; ContLin++ )		{		if( document.formPedido.IdentLinha[ContLin].value != IdCbo && document.formPedido.cbnMenu[ContLin].selectedIndex != 0 )			{			if( document.formPedido.cbnMenu[ContLin].selectedIndex == Cbo.selectedIndex )				{				Duplicado = true;				break;				}			}		}	}	if( Duplicado ) 		{		alert("Atenção esse item ja foi selecionado");		Cbo.selectedIndex = 0;				}}function inserirLinha(){	var linha=document.getElementById('TabelaItem').insertRow();	var celula=linha.insertCell();	TabelaItem.cells[TabelaItem.cells.length-1].innerHTML="<select name='cbnMenu' onchange='VerificaDuplicata(this,"+contador+");'><option>Selecione uma opção</option><option>Processador</option><option>Placa Mãe</option><option>Memória DIM</option><option>Monitor</option><option>Drive CDRW</option><option>Teclado</option><option>Mouse</option></select> ";	var celula=linha.insertCell();	TabelaItem.cells[TabelaItem.cells.length-1].innerHTML="<input name='txtQuantidade' size='10' type='text' value='1' onKeyPress='SoNumero(this,event)' onChange='CaulcularValores()' >";	var celula=linha.insertCell();	TabelaItem.cells[TabelaItem.cells.length-1].innerHTML="<input name='txtVlrUnitario' size='10' type='text' value='0.00' onKeyPress='SoNumero(this,event)' onChange='CaulcularValores()' >";	var celula=linha.insertCell();	TabelaItem.cells[TabelaItem.cells.length-1].innerHTML="<input name='txtDesconto' size='10' type='text' value='1' onKeyPress='SoNumero(this,event)' onChange='CaulcularValores()' >";	var celula=linha.insertCell();	TabelaItem.cells[TabelaItem.cells.length-1].innerHTML="<input name='txtVlrTotal' size='20' type='text' onKeyPress='SoNumero(this,event)' >";	var celula=linha.insertCell();	TabelaItem.cells[TabelaItem.cells.length-1].innerHTML="<input type='button' size='20' onclick='excluirLinha("+contador+")' value='Excluir Item'> <input type=hidden name=IdentLinha value="+contador+">";			contador += 1;}function CaulcularValores(){	var ContLin = 0; 	var totalpedido = 0;	if( TabelaItem.rows.length > 2 )		{		for ( ContLin = 0; ContLin < TabelaItem.rows.length-1; ContLin++ )			{								var itemEscolhido = document.formPedido.cbnMenu[ContLin].options[document.formPedido.cbnMenu[ContLin].options.selectedIndex].innerText;			if (itemEscolhido == "Selecione uma opção")			{				totalpedido = "";				alert("Atenção, Existe um ou mais Produtos não informados!");				break;			}					var quantidade = document.formPedido.txtQuantidade[ContLin].value;			var unitario = document.formPedido.txtVlrUnitario[ContLin].value;			var desconto = document.formPedido.txtDesconto[ContLin].value;			var totalsdesc = quantidade * unitario;			var totalcdesc = totalsdesc - (totalsdesc * (desconto / 100));					totalcdesc = Math.round(totalcdesc*100)/100;			document.formPedido.txtVlrTotal[ContLin].value = totalcdesc;						totalpedido = parseFloat(totalpedido) + parseFloat(totalcdesc);			}		}	else		{			var quantidade = document.formPedido.txtQuantidade.value;		var unitario = document.formPedido.txtVlrUnitario.value;		var desconto = document.formPedido.txtDesconto.value		var totalsdesc = quantidade * unitario;		var totalcdesc = totalsdesc - (totalsdesc * (desconto / 100));				totalcdesc = Math.round(totalcdesc*100)/100;		document.formPedido.txtVlrTotal.value = totalcdesc;					totalpedido = parseFloat(totalpedido) + parseFloat(totalcdesc);		}				totalpedido = Math.round(totalpedido*100)/100;	document.formPedido.txtVlrTotalPedido.value = totalpedido;	}</script></head><body><form name=formPedido>  <input type="button" onclick="inserirLinha()" value="Inserir Item"><table id=TabelaItem border="1" width="100%"><tr><td width="30%">Produto</td><td width="10%">Quantidade</td><td width="10%">Valor Unitário(R$)</td><td width="10%">Desconto (%)</td><td width="20%">Valor Total(R$)</td><td width="20%"><script>Hoje = new Date();aData = "" + Hoje.getDate() + " / " + (Hoje.getMonth() + 1) + " / " + Hoje.getYear();document.write(aData);</script></td></tr></table><table border="1"  width="100%"><td width="100%">Total do Pedido(R$)</td><td width="20%"><input type='button' value='calcular' onClick='CaulcularValores()'><input name='txtVlrTotalPedido' size='20' type='text'></td></table></form></body></html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual função q tá com problema?

então meu brother... o problema é esse.... ele simplesmente não funciona... e num dá erro nenhum... ou seja... quando eu abro o arquivo no FF, e clico no botão pra add novas linhas... ele não faz nada... e nem da erro...q q acontece????abraçosThiago

Compartilhar este post


Link para o post
Compartilhar em outros sites

intaum é no onClick q chama a função inserirLinha(), certo?ham você já foi em Console do JavaScrip e viu c lá aparece o erro?ms agora to vendo com + calma e você dentro desta função tá chamando as outras intaum pode tbm ser uma delas, dá uma resposta pra mim q eu vejo o q posso fazer!beleza?

Compartilhar este post


Link para o post
Compartilhar em outros sites

intaum é no onClick q chama a função inserirLinha(), certo?ham você já foi em Console do JavaScrip e viu c lá aparece o erro?ms agora to vendo com + calma e você dentro desta função tá chamando as outras intaum pode tbm ser uma delas, dá uma resposta pra mim q eu vejo o q posso fazer!beleza?

Tiagão, tem erro pra caramba (quase todos repetidos)..... nem sei se é td do meu código... mas da uma olhada.....Error: uncaught exception: [Exception... "Not enough arguments [nsIDOMHTMLTableElement.insertRow]" nsresult: "0x80570001 (NS_ERROR_XPC_NOT_ENOUGH_ARGS)" location: "JS frame :: file:///c:/Documents%20and%20Settings/tsantiago/Desktop/scripts/pedido.js :: inserirLinha :: line 10" data: no]Error: document.formPedido.txtQuantidade has no propertiesSource File: file:///c:/Documents%20and%20Settings/tsantiago/Desktop/scripts/pedido.jsLine: 160Warning: Element referenced by ID/NAME in the global scope. Use W3C standard document.getElementById() instead.Source File: file:///c:/Documents%20and%20Settings/tsantiago/Desktop/scripts/pedido.jsLine: 137ta dando erro em quase todos os campos do meu html.... pq???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta mudar aqui:

var linha=document.getElementById('TabelaItem').insertRow();
para
var linha=document.getElementById('TabelaItem').insertRow(-1);
to vendo que este tópico é só para Thiagos rsrsrrsentão cara....até que cuncionou, ele inseriu a "linha", mas.... é como se ele só tivesse colocado a tag TR, não aparece nada... nem as bordas,, nem as caixas de texto, nem com altura a linha fica..... q q acontece?abraçosThiago

Compartilhar este post


Link para o post
Compartilhar em outros sites

então galera, alguém sabe me dizer qual é o problema do meu script???abs

Tente fazer assim.
function inserirLinha(){    var linha = document.getElementById('TabelaItem').insertRow(-1);    linha.insertCell(0).innerHTML = "<select name='cbnMenu' onchange='VerificaDuplicata(this,"+contador+");'><option>Selecione uma opção</option><option>Processador</option><option>Placa Mãe</option><option>Memória DIM</option><option>Monitor</option><option>Drive CDRW</option><option>Teclado</option><option>Mouse</option></select> ";    linha.insertCell(1).innerHTML = "<input name='txtQuantidade' size='10' type='text' value='1' onKeyPress='SoNumero(this,event)' onChange='CaulcularValores()' >";    linha.insertCell(2).innerHTML = "<input name='txtVlrUnitario' size='10' type='text' value='0.00' onKeyPress='SoNumero(this,event)' onChange='CaulcularValores()' >";    linha.insertCell(3).innerHTML = "<input name='txtDesconto' size='10' type='text' value='1' onKeyPress='SoNumero(this,event)' onChange='CaulcularValores()' >";    linha.insertCell(4).innerHTML = "<input name='txtVlrTotal' size='20' type='text' onKeyPress='SoNumero(this,event)' >";    linha.insertCell(5).innerHTML = "<input type='button' size='20' onclick='excluirLinha("+contador+")' value='Excluir Item'> <input type=hidden name=IdentLinha value="+contador+">";    contador += 1;}

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.