SOLUCIONADO
Me encuentro estancado en la siguiente situación:
Dispongo de un archivo .html (dispone de un formulario y una funcion en JS) y de un segundo archivo .js (que es donde defino el template y el método del objeto que quiero crear)
El caso es que estoy debugando el script con el Firebug y he localizado el error (o almenos uno de ellos) en el *.html, concretamente en el lugar donde intento crear el objeto ShippingInfo.
ShippingInfo = new ShippingInfo(DestinationAddress,ShippingType,Recei verName,ReceiverEmail);
Se trata de un ejercicio bastante sencillo, con el que pretendía intentar comprender el funcionamiento de la creación de objetos en JS mediante templates, pero como veis, me he quedado estancado :P
A ver si alguien consigue hecharme un cable.
Gracias de antemano,
*.html
Código:
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript" type="text/javascript" src="myOwnJavaScript.js">
</SCRIPT>
<SCRIPT LANGUAGE="JavaScript" type="text/javascript">
<!--
var ShippingInfo;
function checkInfo(){
var cname = Form1.ReceiverName.value.match("Receiver");
var cemail = Form1.ReceiverEmail.value.match("@");
var DestinationAddress = Form1.ShippingDestination.value;
var ShippingType = Form1.ShippingType.value;
if(cname != null && cemail != null && DestinationAddress != "-- Select --" && ShippingType != "-- Select --"){
var ReceiverName = Form1.ReceiverName.value;
var ReceiverEmail = Form1.ReceiverEmail.value;
ShippingInfo = new ShippingInfo(DestinationAddress,ShippingType,ReceiverName,ReceiverEmail);
document.write("lala");
}
}
//-->
</SCRIPT>
<TITLE>MyOwnJavaScript</TITLE>
</HEAD>
<BODY>
<FORM name="Form1" onSubmit="checkInfo()">
<SELECT id="ShippingDestination">
<OPTION>-- Select --</OPTION>
<OPTION>Boston</OPTION>
<OPTION>Seoul</OPTION>
</SELECT>
<BR><BR>
<SELECT id="ShippingType">
<OPTION>-- Select --</OPTION>
<OPTION>Express delivery</OPTION>
<OPTION>Standard delivery</OPTION>
</SELECT>
<BR><BR>
<INPUT id="ReceiverName" type="textfield">
<BR><BR>
<INPUT id="ReceiverEmail" type="textfield">
<BR><BR>
<INPUT type="Submit" name="Button1" value="Submit">
<DIV id="myOwndivElement">
</DIV>
</FORM>
</BODY>
</HTML>
*.js
Código:
function ShippingInfo(DestinationAddress,ShippingType,ReceiverName,ReceiverEmail){
this.DestinationAddress = DestinationAddress;
this.ShippingType = ShippingType;
this.ReceiverName = ReceiverName;
this.ReceiverEmail = ReceiverEmail;
}
function int GetShippingCost(){
if(DestinationAddress == "Boston"){
if(ShippingType == "Standard delivery"){
return(100);
}else{
return(200);
}
}else{
if(ShippingType == "Standard delivery"){
return(500);
}else{
return(1000);
}
}
}