js怎么验证字符串中是否有空格

js怎么验证字符串中是否有空格,第1张

var str = "任意 字符串";

if (strindexOf(" ") == -1) {

    alert("没有空格");

} else {

    alert("有空格");

}

取出两个undefined是因为在ff中,会将元素内的换行当成一个空的文本节点来处理。

有两种办法可以忽略掉空的文本节点:

第一种,根据nodeType过滤掉空文本节点:

function getFirstChild(parent) {

    if(parent && parentnodeType == '1') {

        var node = parentfirstChild;

        while(nodenodeType != 1) {

            node = nodenextSibling;

        }

        

        return node;

    }

}

第二种办法,用children[0]获取第一个节点,比如:

<div id="c">

    <span>first span</span>

</div>

documentgetElementById('c')children[0]取到的就是第一个span。

另外,children在IE中会将注释当作节点包含在内,需要注意一下,比如下面这种结构:

<div id="c">

<!-- this is comment -->

<span>Span<span>

</div>

在IE中使用documentgetElementById('c')children[0],获取到的是<!-- this is comment -->,而不是<span>Span</span>。

nodeType返回值代表的含义:

返回值    节点类型

1             Element                        元素节点

2             Attr                               属性节点

3             Text                              文本节点

4             CDATASection             <![CDATA[]]>

5             EntityReference           文档中的实体引用部分

6             Entity                           文档中的实体

7             ProcessingInstruction  处理指令

8             Comment                     注释

9             Document                    整个文档(文档根节点)

10           DocumentType            向为文档定义的实体提供接口

11           DocumentFragment    轻量级的 Document 对象,能够容纳文档的某个部分

12           Notation                       代表 DTD 中声明的符号

各类节点的子节点:

节点类型    子节点类型

1                1、3、4、5、7、8

2                3、5

3                无子节点

4                无子节点

5                1、3、4、5、7、8

6                1、3、4、5、7、8

7                无子节点

8                无子节点

9                1、7、8、10

10              无子节点

11              1、3、4、5、7、8

12              无子节点

它叫不换行空格。

全称No-Break Space,它是最常见和我们使用最多的空格,它是按下space键产生的空格。在HTML中,如果你用空格键产生此空格,空格是不会累加的,要使用html实体表示才可累加,该空格占据宽度受字体影响明显而强烈。

匹配字母、数字和空格的正则表达式如下:

^[A-Za-z0-9 ]\b$

正则表达式作为功能强大的字符处理引擎,最常见的就是匹配字母、数字类的表格式,常见的表达式写法,是用 [] (方括号)来指定多个字符区间,例如正则表达式[A-Za-z]匹配任何字母(大写和小写)、[0-9]匹配数字等等。

简单来说,将你需要的字符(比如空格)添加进方括号中就可以了。

HTML中默认会忽略多个空格符,值保留一个。如果需要在页面上显示多个空格符,需要用空格符对应的实体(& nbsp;)来代替;(&和nbsp;之间的空格在使用时需要去掉)

以上就是关于js怎么验证字符串中是否有空格全部的内容,包括:js怎么验证字符串中是否有空格、如何用js去除元素之间的空格、jsp页面js取值多一个空格等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9566517.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存