我是一个相对的 JS 新手,但我有点麻烦 - 对于表单提交系统,我需要使用唯一 ID 填充表单字段(可以是任何东西,只要它相对确定是唯一的)。
我想到了使用 getTime(),因为它会为我的要求产生足够长且唯一的数字。但我似乎无法理解使用该值填充常规(隐藏)文本字段所需的代码,尽管关于 SO 的几个主题提出了类似的问题。
表单和所有 HTML 都已经到位,我需要的只是 js 脚本。谁能帮我吗?
我是一个相对的 JS 新手,但我有点麻烦 - 对于表单提交系统,我需要使用唯一 ID 填充表单字段(可以是任何东西,只要它相对确定是唯一的)。
我想到了使用 getTime(),因为它会为我的要求产生足够长且唯一的数字。但我似乎无法理解使用该值填充常规(隐藏)文本字段所需的代码,尽管关于 SO 的几个主题提出了类似的问题。
表单和所有 HTML 都已经到位,我需要的只是 js 脚本。谁能帮我吗?
var timestamp = new Date().getUTCMilliseconds();
var now = new Date();
timestamp =now.getFullYear().toString();
// 2011
timestamp += (now.getFullMonth < 9 ? '0' : '') + now.getFullMonth().toString();
// JS months are 0-based, so +1 and pad with 0's
timestamp += (now.getDate < 10) ? '0' : '') + now.getDate().toString();
然后将该时间戳附加到您的输入
<input name="timestamp" id="input" type="hidden"/>
然后:
document.querySelector('#input').value = timestamp;
编辑:最终代码
<script>
document.onreadystatechange = function()
{
if(document.readyState == "interactive")
{
var now = new Date();
timestamp =now.getFullYear().toString();
// 2011
timestamp += (now.getFullMonth < 9 ? '0' : '') + now.getFullMonth().toString();
// JS months are 0-based, so +1 and pad with 0's
timestamp += (now.getDate < 10) ? '0' : '') + now.getDate().toString();
document.querySelector('#input').value = timestamp;
}
}
</script>
将此脚本标签放在文档的底部。