Javascript IE[10-11]:输入元素';s值变为等于占位符文本
我发现了以下问题。假设我们有输入的[type=“text”]元素没有值,并且有一些placehpolder文本。当输入的类型从“文本”动态更改为“隐藏”时,输入的值变为等于占位符文本。“静态”隐藏输入不会出现问题 以下代码和a演示了该问题: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
<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