从javascript设置表单元素的输入值

从javascript设置表单元素的输入值,javascript,html,forms,Javascript,Html,Forms,我的表单元素看起来像 您可以编辑此项目 &时代; 接收日期 从javascript中,我只想将receivingdate设置为x/x/x var form=document.getElementById('modal-form').getElementsByClassName('form-group'); 不确定为什么不起作用。f您只想获取receivingdate的值。请尝试此操作 document.getElementById('receivingdate').addEventList

我的表单元素看起来像


您可以编辑此项目
&时代;
接收日期
从javascript中,我只想将
receivingdate
设置为
x/x/x

var form=document.getElementById('modal-form').getElementsByClassName('form-group');

不确定为什么不起作用。

f您只想获取receivingdate的值。请尝试此操作

document.getElementById('receivingdate').addEventListener('change', function(e) {
  var form = document.getElementById('receivingdate').value;
  console.log(form)
})

无法工作,因为您的
文档.getElementById('modal-form')
获取特定元素,而
无法使用.getElementsByClassName('form-group')
获取该元素的子元素。此外,form变量将只保存从文档检索到的元素

如果您确实需要获取#模态形式下的所有.form组元素,那么您可以使用

var elements = document.querySelector("#modal-form .form-group");
document.getElementById("water-volume").value = new Date().toLocaleDateString('en-CA');
如果只是尝试设置#receivingdate元素,那么可以使用该元素的value属性

document.getElementById("receivingdate").value = "2019-12-10";
请注意,这将需要格式为
yyyy-MM-dd
的字符串。您不能按字面意思将该框设置为
x/x/x
,但将其设置为上述值将根据您所在的地区为您提供
10/12/2019
12/10/2019

如果您只是希望它默认为今天的日期,那么您可以使用

var elements = document.querySelector("#modal-form .form-group");
document.getElementById("water-volume").value = new Date().toLocaleDateString('en-CA');
其中en CA将todays date设置为加拿大英语日期格式的字符串格式,恰好是日期元素所需的格式

如果要检索当前日期,只需使用

var date = document.getElementById("receivingdate").value;
你可以把它放在一个事件处理程序中,就像在change中一样


如果您希望对DOM进行更高级的操作,那么我将研究。可以使用来进行更强大的日期格式设置。

是否要将
dd/mm/yyyy
更改为
x/x/x
?如何处理
document.getElementById(“receivingdate”).value=“x/x/x”编辑:将其删除。它不允许您将x/x/x作为一个值,因为它不符合日期格式,例如dd/mm/yyyy或yyyy-mm-dd。如果您想要一个默认值,您需要在其中输入一个实际日期。根据,您可以使用此技巧将默认的todays日期转换为正确的格式,以便使用元素的value属性设置它<代码>文档.getElementById(“水量”).value=new Date().toLocaleDateString('en-CA')我在这里发布的原因是,我的html中有多个同名表单。我需要获取
模式表单的
receivngdate
,因此
document.getElementById(“receivingdate”)。值
将不起作用,因为有多个元素具有该ID。@sakib11同一页面上不能有多个元素具有相同ID。ID需要对元素唯一。一次只允许一个。类允许有多个元素。因此,您需要在模态上放置ID,然后在输入元素上放置一个类。然后可以使用
document.querySelector(#elementID.inputClass”)
获取特定的输入。其中elementID是模态的ID,inputClass是输入的类。或者您可以将它们都设置为id,以便
document.querySelector(“#modalID#receivingdate”)
。这就解释了很多问题。Thanks@sakib11那么,请随意选择正确的答案。谢谢