Hola nestorvaldez.
Te contesto a la primera pregunta. Los valores que recoges de un cuadro de texto JavaScript los interpreta como cadenas, por eso los junta en vez de sumarlos. Tienes que pasarlos a valores numéricos:
pr1 = parseInt(document.form1.p1.value);
pr2 = parseInt(document.form1.p2.value);
Saludos,