怎样获取一个元素节点后面的元素节点

怎样获取一个元素节点后面的元素节点,第1张

可以使用 nextSibling 或者 nextElementSibling。

nextSibling 属性是获取节点后面的节点(可能是文本节点,可以是元素节点,也可以是注释节点等等)

nextElementSibling 是获取节点后面的第一个元素节点

举个例子:

<div id="box">

<div id="first">我是第一个节点</div>

我是文本<span>我是SPAN</span>

</div>

documentgetElementById( 'first' )nextSibling // 获取到 TextNode 我是文本

documentgetElementById( 'first' )nextElementSibling // 获取到 SPAN

属性节点

属性本身就是一个对象(Attr对象),但是实际上我们都是 *** 作的Element对象来进行 *** 作属性。(可读可写)

Elementid

Elementsrc=""

如果某个属性是标准属性,我们可以直接用这个属性

Elementattibutes返回一个伪数组,包含了当前元素所有的属性名。

ElementgetAttribute()

获取某个属性zhi。没有则返回null 标准和不标准的属性名都行

ElementsetAttribute()

用于添加或者修改属性。传两个值。要更改的属性值总是字符串,如果不是字符串,则会转化为字符串。

有就更改,没有就添加

ElementremoveAttribute()

用来移除指定的属性。

ElementgetAttributeNames()

获取所有属性名。返回一个数组。没有则返回空数组。

与Elementattributes区别,Elementattributes返回伪数组。

ElementhasAttribute()

用来检测某个属性是否存在。返回一个布尔值。

ElementhasAttributes()

用来检测当前元素是否有属性。返回一个布尔值。

文本节点

文本节点(Text)代表元素节点(Element)和属性节点(Attribute)的文本内容。

data(数据的意思)

data属性与textValue一样,用来设置或读取文本节点内容。

wholeText

wholeText属性将当前文本节点与相邻的文本节点,作为一个整体返回。

大多数情况下,wholeText属性的返回值,与data属性和textContent属性相同。

length 返回当前文本节点的长度。(跟字符串规矩一样)

文本节点的方法

appendData():在Text节点尾部追加字符串

向当前文本节点后面添加一个文本节点(字符串)

deleteData():删除Text节点内部的子字符串,

第一个参数为子字符串开始位置,第二个参数为子字符串长度

insertData():在Text节点插入字符串,

第一个参数为插入位置,第二个参数为插入的子字符串。

在下标前面插入

replaceData():用于替换文本,第一个参数为替换开始位置,

第二个参数为需要被替换掉的长度,第三个参数为新加入的字符串。

substringData():用于获取子字符串,

第一个参数为子字符串在Text节点中的开始位置,第二个参数为子字符串长度

第一个值为起始下标,第二个值为截取的长度

splitText() 用于将文本节点一分为二。它的参数就是分割位置(从零开始)

,分割到该位置的字符前结束。如果分割位置不存在,将报错。

normalize() 用于父节点将相邻的两个文本节点合并

remove() 用于移除文本节点

文档片段节点

DocumentFragment节点代表一个文档的片段,本身就是一个完整的 DOM 树形结构。

它没有父节点,parentNode返回null,但是可以插入任意数量的子节点。它不属于当前文档。

documentcreateDocumentFragment //创建文本节点

给你一段完整的代码:

<html>

<head>

<title></title>

<script language="javascript">

function submitForm()

{

var productpicc = documentgetElementById("productpicc");

if (!productpiccvalue || productpiccvalue=="")

{

alert("修改前的值:"+productpiccvalue);

productpiccvalue = documentgetElementById("productpic")value;

alert("修改后的值:"+productpiccvalue);

}

documentforms["form1"]submit();

}

</script>

</head>

<body>

<form id="form1" action="xxxx" method="post">

productpic: <input type="text" name="productpic" id="productpic" />

<br />

productpicc:<input type="text" name="productpicc" id="productpicc" />

<br />

<input type="button" value="提交" onclick="submitForm()" />

</form>

</body>

</html>

C# *** 作XML

有以下几种方式:

1:使用XmlDocument相关类库和方法 *** 作xml

2:使用XDocument相关类库和方法 *** 作xml

3:使用XmlReader和XmlWriter相关类库和方法 *** 作xml

获得指定节点的值也需要

分为属性和元素

1:使用XmlDocument

XmlDocument

doc

=

new

XmlDocument();

docLoad("Customer2xml");

//

XmlNodeList

nodeList

=

docGetElementsByTagName("row");

XmlNodeList

nodeList

=

docSelectNodes("/Table/row");

//读取属性+元素

foreach

(XmlNode

item

in

nodeList)

{

customerInfoAppId

=

item

Attributes

["AppID"]Value;

customerInfoCustomerID

=

item["CustomerID"]InnerText;

}

2:使用XDocument

XDocument

xdoc

=

XDocumentLoad("Customer2xml");

var

custs

=

from

customer

in

xdocDescendants("row")

select

new

{//读取属性+元素

Version

=

customerAttribute("Version")Value,

CustomerID

=

customerElement("CustomerID")Value,

};

3:使用XmlReader

XmlReader

reader

=

XmlReaderCreate("Customer2xml",

settings);

//读取属性

while

(readerRead())

{

if

(readerNodeType

==

XmlNodeTypeElement)

{

switch

(readerName)

{

case

"row":

customerInfo

=

new

CustomerInfo();

if

(readerHasAttributes)

{

customerInfoAppId

=

readerGetAttribute("AppID");

customerInfoVersion

=

readerGetAttribute("Version");

}

break;

case

"CustomerID":

customerInfoCustomerID

=

readerReadString();

break;

}

}

以上就是关于怎样获取一个元素节点后面的元素节点全部的内容,包括:怎样获取一个元素节点后面的元素节点、属性节点,文本节点,文档片段节点、JS获取文本域的值语句如何写等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存