You can utilize the WFS service requests DescribeFeatureType to identify all the attributes and their types for a specific typeName. This is probably the most appropriate way to identify whether there is a datetime field on your layer of interest. There is no existing WFS DescribeFeatureType example for OpenLayers, but I slightly modified the WMS DescribeLayer example to show how you could accomplish this.
Here is the HTML/JS example:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
<meta name="apple-mobile-web-app-capable" content="yes">
<title>OpenLayers WFSDescribeFeatureType Parser Example</title>
<link rel="stylesheet" href="style.css" type="text/css">
<script src="../OpenLayers.js"></script>
<script type="text/javascript">
function parseData(req) {
format = new OpenLayers.Format.WFSDescribeFeatureType();
html = "<br>";
resp = format.read(req.responseText);
var featureTypes = resp.featureTypes;
for(var i = 0; i < featureTypes.length; i++) {
html += "Layer: typeName: "+ featureTypes[i].typeName+",";
for (var j = 0; j < featureTypes[i].properties.length; j++) {
html += "<ul>";
html += "<li>name: " + featureTypes[i].properties[j].name + "</li>";
html += "<li>localType: " + featureTypes[i].properties[j].localType + "</li>";
html += "<li>nillable: " + featureTypes[i].properties[j].nillable + "</li>";
html += "</ul>"
}
}
document.getElementById('output').innerHTML = html;
}
function load() {
OpenLayers.Request.GET({
url: "xml/wfsdescribefeaturetype.xml",
success: parseData
});
}
</script>
</head>
<body onload="load()">
<h1 id="title">WFSDescribeFeatureType Parser Example</h1>
<div id="tags">
wfsdescribefeaturetype, parser, cleanup
</div>
<p id="shortdesc">
Demonstrate the operation of the WFSDescribeFeatureType parser.
</p>
<div id="output"></div>
<div id="docs">
<p>This script reads data from a file and parses out attributes on a typeName,
appending them to a HTML string with markup tags. This markup is
dumped to an element in the page.</p>
</div>
</body>
</html>
Here is also the xml file that I used as input:
<?xml version="1.0" encoding="UTF-8"?><xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:geonode="http://www.geonode.org/" xmlns:gml="http://www.opengis.net/gml" elementFormDefault="qualified" targetNamespace="http://www.geonode.org/">
<xsd:import namespace="http://www.opengis.net/gml" schemaLocation="http://localhost:8080/geoserver/schemas/gml/2.1.2/feature.xsd"/>
<xsd:complexType name="modis_fire_2013_365_conusType">
<xsd:complexContent>
<xsd:extension base="gml:AbstractFeatureType">
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="0" name="the_geom" nillable="true" type="gml:PointPropertyType"/>
<xsd:element maxOccurs="1" minOccurs="0" name="AREA" nillable="true" type="xsd:double"/>
<xsd:element maxOccurs="1" minOccurs="0" name="PERIMETER" nillable="true" type="xsd:double"/>
<xsd:element maxOccurs="1" minOccurs="0" name="FIRE_" nillable="true" type="xsd:long"/>
<xsd:element maxOccurs="1" minOccurs="0" name="FIRE_ID" nillable="true" type="xsd:long"/>
<xsd:element maxOccurs="1" minOccurs="0" name="LAT" nillable="true" type="xsd:double"/>
<xsd:element maxOccurs="1" minOccurs="0" name="LONG" nillable="true" type="xsd:double"/>
<xsd:element maxOccurs="1" minOccurs="0" name="DATE" nillable="true" type="xsd:dateTime"/>
<xsd:element maxOccurs="1" minOccurs="0" name="JULIAN" nillable="true" type="xsd:int"/>
<xsd:element maxOccurs="1" minOccurs="0" name="GMT" nillable="true" type="xsd:int"/>
<xsd:element maxOccurs="1" minOccurs="0" name="TEMP" nillable="true" type="xsd:double"/>
<xsd:element maxOccurs="1" minOccurs="0" name="SPIX" nillable="true" type="xsd:double"/>
<xsd:element maxOccurs="1" minOccurs="0" name="TPIX" nillable="true" type="xsd:double"/>
<xsd:element maxOccurs="1" minOccurs="0" name="SRC" nillable="true" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="SAT_SRC" nillable="true" type="xsd:string"/>
<xsd:element maxOccurs="1" minOccurs="0" name="CONF" nillable="true" type="xsd:int"/>
<xsd:element maxOccurs="1" minOccurs="0" name="FRP" nillable="true" type="xsd:double"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:element name="modis_fire_2013_365_conus" substitutionGroup="gml:_Feature" type="geonode:modis_fire_2013_365_conusType"/>
</xsd:schema>
I placed my html in the openlayers/examples directory of the source tree and the xml in openlayers/examples/xml directory. I then just served it up using apache.