I have a form which includes several inputs that use Spry ([url]http://labs.adobe.com/technologies/spry/samples/validationwidgets/with_spry_region/widgets_region.html
One of the input boxes allows the user to manually enter a date or use the Zapatec Date Picker ([url]http://www.zapatec.com/website/main/coding.jsp
Does anyone have any ideas as to where I should start looking for the cause and the fix? Like I said, it works in IE7, but not in FF3.
[code=html]
<script type="text/javascript">
Zapatec.Calendar.setup({
// ...your usual config here
onUpdate : "triggerSpry"
});
function triggerSpry() {
myDateInput = getElementById("MyDateInputId");
// Spry.Widget.ValidationTextField = function(element, type, options)
// Function located in SpryValidationTextField.js Line 78
Spry.Widget.ValidationTextField(myDateInput, 'date', '');
}
</script>
[/code]
[code=html]
<html>
<head>
<link href="spry/SpryValidationTextField.css" rel="stylesheet" type="text/css" />
<link href="spry/SpryValidationSelect.css" rel="stylesheet" type="text/css" />
<link href="spry/SpryValidationTextarea.css" rel="stylesheet" type="text/css" />
<link href="spry/SpryValidationPassword.css" rel="stylesheet" type="text/css" />
<link href="spry/SpryValidationConfirm.css" rel="stylesheet" type="text/css" />
<link href="spry/validation.css" rel="stylesheet" type="text/css" />
<link href="calander/winter.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="spry/SpryValidationTextField.js"></script>
<script type="text/javascript" src="spry/SpryValidationSelect.js"></script>
<script type="text/javascript" src="spry/SpryValidationTextarea.js"></script>
<script type="text/javascript" src="spry/SpryValidationPassword.js"></script>
<script type="text/javascript" src="spry/SpryValidationConfirm.js"></script>
<script type="text/javascript" src="calendar/zapatec.js"></script>
<script type="text/javascript" src="calendar/calendar.js"></script>
<script type="text/javascript" src="calendar/calendar-en.js"></script>
</head>
<body>
<form style="margin:0px; padding:0px;" method="post" action="">
<table>
<tr id="sprystartdate">
<td height="38px" class="formLabel">Start Date:<span class="textfieldRequiredMsg"><br/>Blank</span><span class="textfieldMinValueMsg"><br/>Must be after 01/01/2009</span><span class="textfieldMaxValueMsg"><br/>Must be before 12/31/2009</span><span class="textfieldInvalidFormatMsg"><br/>Enter valid date format</span></td>
<td height="38px"><input type="text" size="15" id="startdate" name="startdate" value="" /> <img id="trigger1" src="calander/showCalander.gif" border="0" height="18" width="18" alt="Show Calendar">
<script type="text/javascript">
var cal1 = Zapatec.Calendar.setup({
weekNumbers : false,
step : 1,
range : [2006.01, 2049.12],
electric : false,
inputField : "startdate",
button : "trigger1",
ifFormat : "%m/%d/%Y",
daFormat : "%m/%d/%Y",
align : "CR"
});
</script>
<img src="images/ok.gif" title="Valid" alt="Valid" class="validMsg" border="0"/></td>
</tr>
</table>
<script type="text/javascript">
<!--
var sprystartdate = new Spry.Widget.ValidationTextField("sprystartdate", "date", {useCharacterMasking:true, format:"mm/dd/yyyy", minValue:"01/01/2006", maxValue:"12/31/2049", validateOn:["change"]});
//-->
</script>
</body>
</html>
[/code]
[code=html]
<html>
<head>
<link href="spry/SpryValidationTextField.css" rel="stylesheet" type="text/css" />
<link href="spry/SpryValidationSelect.css" rel="stylesheet" type="text/css" />
<link href="spry/SpryValidationTextarea.css" rel="stylesheet" type="text/css" />
<link href="spry/SpryValidationPassword.css" rel="stylesheet" type="text/css" />
<link href="spry/SpryValidationConfirm.css" rel="stylesheet" type="text/css" />
<link href="spry/validation.css" rel="stylesheet" type="text/css" />
<link href="calander/winter.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="spry/SpryValidationTextField.js"></script>
<script type="text/javascript" src="spry/SpryValidationSelect.js"></script>
<script type="text/javascript" src="spry/SpryValidationTextarea.js"></script>
<script type="text/javascript" src="spry/SpryValidationPassword.js"></script>
<script type="text/javascript" src="spry/SpryValidationConfirm.js"></script>
<script type="text/javascript" src="calendar/zapatec.js"></script>
<script type="text/javascript" src="calendar/calendar.js"></script>
<script type="text/javascript" src="calendar/calendar-en.js"></script>
</head>
<body>
<form style="margin:0px; padding:0px;" method="post" action="">
<table>
<tr id="sprystartdate">
<td height="38px" class="formLabel">Start Date:<span class="textfieldRequiredMsg"><br/>Blank</span><span class="textfieldMinValueMsg"><br/>Must be after 01/01/2009</span><span class="textfieldMaxValueMsg"><br/>Must be before 12/31/2009</span><span class="textfieldInvalidFormatMsg"><br/>Enter valid date format</span></td>
<td height="38px"><input type="text" size="15" id="startdate" name="startdate" value="" /> <img id="trigger1" src="calander/showCalander.gif" border="0" height="18" width="18" alt="Show Calendar">
<script type="text/javascript">
var cal1 = Zapatec.Calendar.setup({
weekNumbers : false,
step : 1,
range : [2006.01, 2049.12],
electric : false,
inputField : "startdate",
button : "trigger1",
ifFormat : "%m/%d/%Y",
daFormat : "%m/%d/%Y",
align : "CR",
onUpdate : "triggerSpry"
});
function triggerSpry() {
myDateInput = getElementById("startdate");
// Spry.Widget.ValidationTextField = function(element, type, options)
// Function located in SpryValidationTextField.js Line 78
// Spry.Widget.ValidationTextField(myDateInput, 'date', '');
var sprystdate = new Spry.Widget.ValidationTextField("sprystartdate", "date", {useCharacterMasking:true, format:"mm/dd/yyyy", minValue:"01/01/2006", maxValue:"12/31/2049", validateOn:["change"]});
}
</script>
<img src="images/ok.gif" title="Valid" alt="Valid" class="validMsg" border="0"/></td>
</tr>
</table>
<script type="text/javascript">
<!--
var sprystartdate = new Spry.Widget.ValidationTextField("sprystartdate", "date", {useCharacterMasking:true, format:"mm/dd/yyyy", minValue:"01/01/2006", maxValue:"12/31/2049", validateOn:["change"]});
//-->
</script>
</body>
</html>
[/code]
[code=html]
...
var sprystartdate = new Spry.Widget.ValidationTextField("sprystartdate", "date", {useCharacterMasking:true, format:"mm/dd/yyyy", minValue:"01/01/2006", maxValue:"12/31/2049", validateOn:["change"]});
...
[/code]
[code=html]
...
var sprystdate = new Spry.Widget.ValidationTextField("sprystartdate", "date", {useCharacterMasking:true, format:"mm/dd/yyyy", minValue:"01/01/2006", maxValue:"12/31/2049", validateOn:["change"]});
...
[/code]
[CODE]...
onUpdate : "triggerSpry"
});
function triggerSpry() {
myDateInput = getElementById("startdate");
// Spry.Widget.ValidationTextField = function(element, type, options)
// Function located in SpryValidationTextField.js Line 78
// Spry.Widget.ValidationTextField(myDateInput, 'date', '');
var sprystdate = new Spry.Widget.ValidationTextField("sprystartdate", "date", {useCharacterMasking:true, format:"mm/dd/yyyy", minValue:"01/01/2006", maxValue:"12/31/2049", validateOn:["change"]});
}
</script>
...[/CODE]
[CODE]...
onUpdate : triggerSpry
});
function triggerSpry() {
sprystartdate.validate();
}
</script>
...[/CODE]
[CODE]<script type="text/javascript">
<!--
var sprystartdate = new Spry.Widget.ValidationTextField("sprystartdate", "date", {useCharacterMasking:true, format:"mm/dd/yyyy", minValue:"01/01/2006", maxValue:"12/31/2049", validateOn:["change"]});
//-->
</script>[/CODE]
[code=html]<html>
<head>
<link href="spry/SpryValidationTextField.css" rel="stylesheet" type="text/css" />
<link href="spry/SpryValidationSelect.css" rel="stylesheet" type="text/css" />
<link href="spry/SpryValidationTextarea.css" rel="stylesheet" type="text/css" />
<link href="spry/SpryValidationPassword.css" rel="stylesheet" type="text/css" />
<link href="spry/SpryValidationConfirm.css" rel="stylesheet" type="text/css" />
<link href="spry/validation.css" rel="stylesheet" type="text/css" />
<link href="calander/winter.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="spry/SpryValidationTextField.js"></script>
<script type="text/javascript" src="spry/SpryValidationSelect.js"></script>
<script type="text/javascript" src="spry/SpryValidationTextarea.js"></script>
<script type="text/javascript" src="spry/SpryValidationPassword.js"></script>
<script type="text/javascript" src="spry/SpryValidationConfirm.js"></script>
<script type="text/javascript" src="calendar/zapatec.js"></script>
<script type="text/javascript" src="calendar/calendar.js"></script>
<script type="text/javascript" src="calendar/calendar-en.js"></script>
</head>
<body>
<form style="margin:0px; padding:0px;" method="post" action="">
<table>
<tr id="sprystartdate">
<td height="38px" class="formLabel">Start Date:<span class="textfieldRequiredMsg"><br/>Blank</span><span class="textfieldMinValueMsg"><br/>Must be after 01/01/2009</span><span class="textfieldMaxValueMsg"><br/>Must be before 12/31/2009</span><span class="textfieldInvalidFormatMsg"><br/>Enter valid date format</span></td>
<td height="38px"><input type="text" size="15" id="startdate" name="startdate" value="" /> <img id="trigger1" src="calander/showCalander.gif" border="0" height="18" width="18" alt="Show Calendar">
<script type="text/javascript">
var cal1 = Zapatec.Calendar.setup({
weekNumbers : false,
step : 1,
range : [2006.01, 2049.12],
electric : false,
inputField : "startdate",
button : "trigger1",
ifFormat : "%m/%d/%Y",
daFormat : "%m/%d/%Y",
align : "CR",
onUpdate : "triggerSpryCal1"
});
function triggerSpryCal1() {
sprystartdate.validate();
}
</script>
<img src="images/ok.gif" title="Valid" alt="Valid" class="validMsg" border="0"/></td>
</tr>
</table>
<script type="text/javascript">
<!--
var sprystartdate = new Spry.Widget.ValidationTextField("sprystartdate", "date", {useCharacterMasking:true, format:"mm/dd/yyyy", minValue:"01/01/2006", maxValue:"12/31/2049", validateOn:["change"]});
//-->
</script>
</body>
</html>[/code]
0.1.9 — BETA 5.18