Javascript IE[10-11]:输入元素';s值变为等于占位符文本

Javascript IE[10-11]:输入元素';s值变为等于占位符文本,javascript,html,internet-explorer,placeholder,hidden-field,Javascript,Html,Internet Explorer,Placeholder,Hidden Field,我发现了以下问题。假设我们有输入的[type=“text”]元素没有值,并且有一些placehpolder文本。当输入的类型从“文本”动态更改为“隐藏”时,输入的值变为等于占位符文本。“静态”隐藏输入不会出现问题 以下代码和a演示了该问题: <input type="text" name="oprDate" placeholder="Date" class="form-control field-oprDate-control" value=""> <button id="bt

我发现了以下问题。假设我们有输入的[type=“text”]元素没有值,并且有一些placehpolder文本。当输入的类型从“文本”动态更改为“隐藏”时,输入的值变为等于占位符文本。“静态”隐藏输入不会出现问题

以下代码和a演示了该问题:

<input type="text" name="oprDate" placeholder="Date" class="form-control field-oprDate-control" value="">
<button id="btn" type="button">Run</button>
<div>
  Input's value is is: 
  <span id="res"></span>
</div>

var btn = document.getElementById("btn"),
    input = document.getElementsByName("oprDate")[0],
    res = document.getElementById("res");

btn.addEventListener("click", function(evt) {
    input.type = "hidden";
    res.innerHTML = input.value;
});

跑
输入值为:
var btn=document.getElementById(“btn”),
input=document.getElementsByName(“oprDate”)[0],
res=document.getElementById(“res”);
btn.addEventListener(“单击”,函数(evt){
input.type=“隐藏”;
res.innerHTML=input.value;
});

我认为这种行为是不正确的,即使占位符属性对于隐藏的输入是无用的。你觉得怎么样?

看看这个:你在使用什么版本的IE?有趣的行为。但如果您的问题是占位符被提交,您可以将输入设置为“禁用”和隐藏。这将阻止客户端提交值。只是一个解决办法。@Rohan210我使用IE 10和11