Código Script + Form na campo Descrição

layout

#1

Bom dia, estou tentando inserir um código para o cliente poder calcular a medida que irá precisar comprar, poderia analisar se é possível executar esse código no campo da descrição do produto?

	<script> 
		function soma(){
			var e = document.getElementById("Size");
			var size = parseFloat(e.options[e.selectedIndex].value);
			var largura = parseFloat(form.Lar.value);
			var altura = parseFloat(form.Alt.value);
			var quantidade = parseFloat(form.Qnt.value);
			QntCol = size*100/largura|0;

			var QntLin;
			if(quantidade % QntCol == 0)
			{
				var QntLin = quantidade / QntCol;
			}
			else
			{
				var QntLin = ((quantidade/QntCol)|0)+1;
			}
			var metros = parseFloat(size*parseFloat(QntLin*altura))/100;
			form.M.value = metros.toFixed(3);
		

		}
	</script>
</head>
<body>
	<form name="form">
		<label>Tamanho do Papel: </label>
		<select id="Size" onchange="mudar()">
			<option value="1.2">1,2 m</option>
			<option value="1.48">1,48 m</option>
		</select><br> 
		<label>Largura: </label>
		<input name="Lar"><br> 
		<label>Altura: </label>
		<input name="Alt"><br> 
		<label>Quantidade: </label>
		<input name="Qnt"><br> <br>

		<label>M<sup>2</sup>: </label>
		<input name="M" readonly=""><br>



		<input type="button" onclick="soma()" value="Calculo Metro">
	</form>
	<script>
		function mudar() {
			if ( form.M.value > 0){
				soma();
			}
		}
	</script>

#2

Opa, tudo bem?

Acho que funciona, mas de forma bem “ilustrativa”, sabe? Não será algo funcional.

No momento de cadastrar o produto, clique em Código-fonte e adicione esse código. Depois, clique novamente. Aí, verá o código que você aplicou.

O que eu te recomendo é criar uma página de conteúdo para que seu cliente faça o cálculo, e não colocar na descrição. Assim, acho que deixa menos confuso.

Espero ter ajudado! Abraços!


#3

Obrigado Andre, até cheguei a testar, porém não estava entrando na função calcular, não retorna o valor, mas deve ser problema com o codigo.
Obrigado pela dica.