如何隐藏空<span>在IE中使用javascript.(注意,在其他浏览器中工作正常)
How to hide empty <span> in IE in javascript. (Note work fine in other browser)
我在IE中遇到了一个关于这段简单代码的问题。我使用此代码在发生错误的字段下显示和隐藏错误消息。
function validateStuff(field, msg)
{
var regex=/^'d{1,7}$/;
var id= field.name + ".error";
if (!regex.test(field.value))
{
document.getElementById(id).innerHTML= msg;
return false;
}
else
{
document.getElementById(id).innerHTML= "";
return true;
}
}
跨度看起来像这个
<SPAN ID="field.error" CLASS="regred"></SPAN>
这个代码在chrome&Firefox但是IE在运行验证后显示了一个大的空块。
我试过显示:无
function validateStuff(field, msg)
{
var regex=/^'d{1,7}$/;
var id= field.name + ".error";
if (!regex.test(field.value))
{
document.getElementById(id).innerHTML= msg;
document.getElementById(id).style.display = 'inline-block';
return false;
}
else
{
document.getElementById(id).innerHTML= "";
document.getElementById(id).style.display = 'none';
return true;
}
}
跨度块仍然存在。
我试着移除跨度
function validateStuff(field, msg)
{
var regex=/^'d{1,7}$/;
var id= field.name + ".error";
if (!regex.test(field.value))
{
document.getElementById(id).innerHTML= msg;
return false;
}
else
{
document.getElementById(id).innerHTML= "";
//IE shenanigan
var parentNode = document.getElementById(id).parentNode;
parentNode.removeChild(document.getElementById(id));
return true;
}
}
但当在其他浏览器中隐藏时,跨度仍然会显示出来。
为什么?
您可以将它放在视口之外,而不是隐藏。
function validateStuff(field, msg)
{
var regex=/^'d{1,7}$/;
var id= field.name + ".error";
var el = document.getElementById(id);
if (!regex.test(field.value))
{
el.innerHTML= msg;
el.style.display = 'inline-block';
el.style.position = 'static';
el.style.left = '0px';
return false;
}
else
{
el.innerHTML= "";
el.style.position = 'absolute';
el.style.left = '-10000px';
return true;
}
}
相关文章:
- 为什么不't Javascript对我的输入值进行了一些重新检查
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 将函数的上下文应用于javascript变量
- 如何隐藏空<span>在IE中使用javascript.(注意,在其他浏览器中工作正常)
- 注意:将数组从 php 转换为 javascript 时出现数组到字符串的转换错误
- 我注意到我倾向于在JavaScript / jQuery中创建DOM对象并附加它们.这是可以的还是我应该在 HTML 中
- Javascript 数组不会注意到文件夹中的新图像
- 获取通过ajax加载的iframe的HTML(请注意,iframe包含一个需要javascript加载的网页)
- 为什么我们应该注意Javascript中的代码注入
- 使用“new Function(..) ”的安全注意事项“(在渲染期间,表达式来自我的 Javascript 源代码)
- 注意事项将C#字符串编码为Javascript字符串
- 使用servlet从/WEB-INF/异步加载javascript:一般注意事项
- Chrome:我怎么能注意到打开“”时出现Javascript错误呢;检查元件”;窗玻璃
- 我们必须注意JavaScript的“严格模式”
- 我刚注意到JavaScript测试中的一个缺陷.我需要帮助来修理它
- 让JavaScript注意到鼠标悬停的目标发生了变化
- 在不被注意的情况下用Javascript样式化元素
- 注意JavaScript对象属性变化的优雅方式
- 获取javascript以提醒用户注意此regex测试
- 使用javascript动态创建表单需要注意哪些事项