我有一个XML文件的日期正在传递到我的网页。我正在使用<body onload
>来调用JavaScript函数,该函数将在我的表单上填充日期输入字段。我有格式为yyyy-MM-dd的日期1950-07-26但我得到错误The specified value "1917" does not conform to the required format, "yyyy-MM-dd".
日期格式被错误解释
它从哪里得到1917?
我的XML是:
<VFILE_DATA>
<CASE>
<TF15>
1950-07-26
</TF15>
</CASE>
</VFILE_DATA>
片段的我HTML/JavaScript
是:
<body onload="load();">
<script>
function load()
{
window.alert("<xsl:value-of select="VFILE_DATA/CASE/TF15"/>");
var dateTF15 = <xsl:value-of select="VFILE_DATA/CASE/TF15"/>;
document.getElementById('[email protected]_TF15').value=dateTF15;
}
</script>
<div class="field f_25" id="field26-container">
<label for="[email protected]_TF15">
Client 1 DOB
</label>
<input name="[email protected]_TF15" id="[email protected]_TF15" required="required" type="date"/>
</div>
</body>
我的警报显示1950年7月26日,这是谷歌浏览器。不知道我出错的地方!
我看:
Date is interpreted as being in a different format
Date incorrectly interpreted in my string
但也有帮助。
如果我直接将输入字段的value
分配到相同的日期,它工作正常。
我知道的很少关于Javascript,但显然你的字符串正在被评估为算术表达式:'1950 - 7 - 26 = 1917'。你不需要明确地施放它吗? –
啊,这是完全明显!其中一件事,我一直在看它太长,看不到简单的事情...... – KT79
'var dateTF15 ='';'将修复它 - 可能是 –