Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript删除css样式_Javascript - Fatal编程技术网

使用javascript删除css样式

使用javascript删除css样式,javascript,Javascript,我有普通的HTML输入字段,根据窗口/浏览器设置有默认边框 在表单验证期间,我将元素的边框设置为红色。比如说 elem.style.border = "1px solid #ff0000"; 如果用户更正了输入,我希望删除红色边框,以便输入字段再次包含 默认边框。最好的方法是添加一个CSS类来设置边框。您可以添加一个类作为 .redBorder{ border: "1px solid #FF0000"; } 无论何时需要设置此类,都可以将其添加为元素的类。这将简化重置过程。最好的方法是添

我有普通的HTML输入字段,根据窗口/浏览器设置有默认边框

在表单验证期间,我将元素的边框设置为红色。比如说

elem.style.border = "1px solid #ff0000";
如果用户更正了输入,我希望删除红色边框,以便输入字段再次包含
默认边框。

最好的方法是添加一个CSS类来设置边框。您可以添加一个类作为

.redBorder{
  border: "1px solid #FF0000";
}

无论何时需要设置此类,都可以将其添加为元素的类。这将简化重置过程。

最好的方法是添加CSS类来设置边框。您可以添加一个类作为

.redBorder{
  border: "1px solid #FF0000";
}

无论何时需要设置此类,都可以将其添加为元素的类。这将简化重置过程。

在非IE浏览器中,可以使用
样式
对象的
removeProperty()
方法:

elem.style.removeProperty("border");

但是,正如Kangkan所建议的那样,添加和删除CSS类更有意义,因为这将在所有主要浏览器中工作。

在非IE浏览器中,您可以使用
样式
对象的
removeProperty()
方法:

elem.style.removeProperty("border");

然而,正如Kangkan所建议的那样,添加和删除CSS类更有意义,因为这将在所有主流浏览器中都有效。

如果您只切换该类,可能会更容易

       var addClass = function( c, e ) {
        e.className += ' ' + c;
        },

        removeClass = function( c, e ) {
        e.className = e.className.replace( c, '' );
        };
用法:

addClass( 'redBorder', el);
removeClass( 'redBorder', el);
CSS:


如果只切换类,可能会更容易

       var addClass = function( c, e ) {
        e.className += ' ' + c;
        },

        removeClass = function( c, e ) {
        e.className = e.className.replace( c, '' );
        };
用法:

addClass( 'redBorder', el);
removeClass( 'redBorder', el);
CSS:


根据您的需要或添加css的可能性,这里有两种方法

在多个类的情况下,替换类是一个更好的解决方案-例如,参见其他答案

<style>
.red { border:1px solid red }
.black { border:1px solid black }
</style>

<input class="black" type="text" onKeyUp="this.className = isNaN(this.value)?'red':'black'">
<input class="black" type="text" onKeyUp="this.style.border = isNaN(this.value)?'1px solid red':'1px solid black'">

.red{边框:1px实心红色}
.black{边框:1px纯黑}

根据您的需要或添加css的可能性,这里有两种方法

在多个类的情况下,替换类是一个更好的解决方案-例如,参见其他答案

<style>
.red { border:1px solid red }
.black { border:1px solid black }
</style>

<input class="black" type="text" onKeyUp="this.className = isNaN(this.value)?'red':'black'">
<input class="black" type="text" onKeyUp="this.style.border = isNaN(this.value)?'1px solid red':'1px solid black'">

.red{边框:1px实心红色}
.black{边框:1px纯黑}

jQuery不能治愈饥荒并停止战争吗?正如我所听到的。jQuery不能治愈饥荒和停止战争吗?正如我所听到的。很棒的解决方案,因为有一次有人用老式的方式做了这件事