c#如何循环获取td标签中的内容

c#如何循环获取td标签中的内容,第1张

代码就不帮忙写了,用XML的方法,递归判断获取即可。

1、XML的方法比较简单,百度找找就好了。

2、递归参考如下例子:

       

       ////////////////开始要递归的函数里面////////////////

       //开始循环递归显示XML

            foreach (XmlNode node in rootNodes)

            {

                bool IsAddNode = true;

                TreeNode tvnode = new TreeNode();

                if (nodeNodeType == XmlNodeTypeElement)

                {

                    tvnodeText = nodeName;

                    if (nodeAttributesCount > 0)

                    {

                        string arrts = GetNodesAttributes(node, ref IsAddNode);

                        tvnodeText += arrts;

                    }

                    else

                    {

                        if (nodeFirstChild != null)

                        {

                            if (nodeFirstChildFirstChild == null && nodeFirstChildNodeType == XmlNodeTypeText)

                            {

                                if (nodeFirstChildValue == stringEmpty) IsAddNode=false;

                                else tvnodeText += "=" + nodeFirstChildValue;

                            }

                        }

                        else

                        {

                            IsAddNode = false;

                        }

                    }

                    if (IsAddNode) tvElementNodeNodesAdd(tvnode);

                }

                if (nodeChildNodesCount != 0 && IsAddNode)

                {

                    GetChildNodes(node, tvnode);//递归取子节点

                }

            }

       ////////////////

       

       

        /// <summary>

        /// 递归取子节点

        /// </summary>

        private void GetChildNodes(XmlNode node, TreeNode tvnode)

        {

            foreach (XmlNode nd in nodeChildNodes)

            {

                bool IsAddNode = true;

                TreeNode tvnd = new TreeNode();

                if (ndNodeType == XmlNodeTypeElement)

                {

                    tvndText = ndName;

                    if (ndAttributesCount > 0)//判断节点有属性

                    {

                        string arrts = GetNodesAttributes(nd, ref IsAddNode);

                        tvndText += arrts;

                    }

                    else

                    {

                        if (ndFirstChild != null)

                        {

                            if (ndFirstChildFirstChild == null && ndFirstChildNodeType == XmlNodeTypeText)//判断节点有值

                            {

                                if (ndFirstChildValue == stringEmpty) IsAddNode = false;

                                else tvndText += "=" + ndFirstChildValue;

                            }

                        }

                        else

                        {

                            IsAddNode = false;

                        }

                    }

                    if (IsAddNode) tvnodeNodesAdd(tvnd);

                }

                if (ndChildNodesCount != 0 && IsAddNode)

                {

                    GetChildNodes(nd, tvnd);

                }

            }

        }

        /// <summary>

        /// 取子节点属性

        /// </summary>

        private string GetNodesAttributes(XmlNode node, ref bool IsAddNode)

        {

            string arrtsStr = stringEmpty;

            XmlAttributeCollection arrts = nodeAttributes;

            foreach (XmlNode attr in arrts)

            {

                if (attrName == "IsCheck" || attrName == "IsAvailable")//节点不配置就不显示信息

                {

                    if (attrFirstChildValue == "False" || attrFirstChildValue == stringEmpty) IsAddNode = false;

                }

                if (attrFirstChildValue != stringEmpty)

                {

                    arrtsStr += " " + attrName + "=";

                    arrtsStr += attrFirstChildValue;

                }

            }

            

            return arrtsStr;

        }

var sm = Extcreate('ExtselectionCheckboxModel', {

listeners: {

selectionchange: function (sm, selections) {

//在该事件中对第二个表格的store进行重新加载,加载时设置参数为第一个表格选中行的内容

}

}

});

如图所示

要获取html内容,需要先获取dom对象

Ext使用query类选择器就能获取,由于获取的是集合,所以如果只有一个,就是数组下标0的对象。

故,html文本用 Extquery('xxx')[0]innerHTML 获取

html文本用 Extquery('xxx')[0]outerHTML 获取

$('td')text();

首先使用jquery选择器选择所有的td标签,使用jquery的text()方法可以获取td中的文字内容。

text():得到匹配元素集合中每个元素的文本内容结合,包括他们的后代,或设置匹配元素集合中每个元素的文本内容为指定的文本内容。

用XPath表达式来定位到对应的<td>元素:

//th[span[text()="发布时间"]]/following-sibling::td/span

这个XPath表达式首先选择包含文本“发布时间”的<span>元素的<th>元素,然后使用/following-sibling::td选择这个<th>元素的下一个兄弟元素,即包含发布时间的<td>元素。最后,使用/span选择包含发布时间值的<span>元素。

请注意,这个XPath表达式返回的是一个<span>元素,如果您只需要获取该元素的文本值,可以使用text()函数,例如:

//th[span[text()="发布时间"]]/following-sibling::td/span/text()

这将返回包含发布时间的<span>元素的文本值

以上就是关于c#如何循环获取td标签中的内容全部的内容,包括:c#如何循环获取td标签中的内容、extjs 表格默认全选,加载后,点击取消选中某行,如何获取其它选中行的内容、请问ExtJs如何获取html内容,谢谢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://www.54852.com/web/9652919.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存