php asp.net html标签,.NET_ASP.NET批量操作基于原生html标签的无序列表的三种方法,在网页开发中,经常要用到无 - phpStudy...

本文介绍了在ASP.NET中批量操作基于原生HTML无序列表的三种方法,包括使用FindControl、Controls集合遍历以及HtmlAgilityPack库。每种方法都有其优缺点,适用于不同的场景,帮助开发者更灵活地处理网页元素。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ASP.NET批量操作基于原生html标签的无序列表的三种方法

在网页开发中,经常要用到无序列表。事实上在符合W3C标准的div+css布局中,无序列表被大量使用,ASP.NET虽然内置了BulletedList控件,用于创建和操作无序列表,但感觉不太好用。本篇介绍服务器端ASP.NET批量操作基于原生html标签的无序列表的三种方法。

方法一,将li元素做成html控件,加上id,用FindControl方法。

aspx代码:

  • 初始值1
  • 初始值2
  • 初始值3
  • 初始值4
  • 初始值5
  • 初始值6
  • 初始值7
  • 初始值8

aspx.cs代码:

protected void Button1_Click(object sender, EventArgs e)

{

//单击按钮后批量改变li元素的内联文本值及样式

for (int i = 1; i <= 8; i++)

{

HtmlGenericControl li = this.FindControl("li" + i) as HtmlGenericControl;

li.InnerHtml = "新值" + i.ToString();

li.Attributes.CssStyle.Value = "color:red";

}

}

方法二,将ul、li元素做成html控件,用ul控件的Controls集合遍历。

aspx代码:

  • 初始值1
  • 初始值2
  • 初始值3
  • 初始值4
  • 初始值5
  • 初始值6
  • 初始值7
  • 初始值8

aspx.cs代码:

private int counter = 1;

protected void Button1_Click(object sender, EventArgs e)

{

//单击按钮后批量改变li元素的内联文本值及样式

foreach (Control control in ul1.Controls)

{

if (control is HtmlGenericControl)

{

HtmlGenericControl li = control as HtmlGenericControl;

li.InnerHtml = "新值" + (counter++).ToString();

li.Attributes.CssStyle.Value = "color:red";

}

}

}

方法三,利用HtmlAgilityPack,对元素以Dom方式操作。

aspx代码:

  • 初始值1
  • 初始值2
  • 初始值3
  • 初始值4
  • 初始值5
  • 初始值6
  • 初始值7
  • 初始值8

aspx.cs代码:

protected void Button1_Click(object sender, EventArgs e)

{

//单击按钮后批量改变li元素的内联文本值及样式

HtmlDocument htmlDoc = new HtmlDocument();

htmlDoc.LoadHtml(ul1.InnerHtml);

HtmlNodeCollection lis = htmlDoc.DocumentNode.SelectNodes("li");

for (int i = 0; i < lis.Count; i++)

{

lis[i].InnerHtml = "新值" + (i + 1).ToString();

lis[i].Attributes.Add("style", "color:red");

}

ul1.InnerHtml = htmlDoc.DocumentNode.InnerHtml;

}

以上三种方法各有优缺点,可根据实际情况选用。相关阅读:

在RAID磁盘阵列下如何搭建Linux系统

asp.net中ViewState的用法详解

MFC实现全屏功能代码实例

PHP下使用mysqli的函数连接mysql出现warning: mysqli::real_connect(): (hy000/1040): ...

Win10 Edge浏览器为什么不能通过应用商店更新?

less开发指南

如何查询占CPU高的oracle进程

Smarty中常用变量操作符汇总

aspx是什么格式 ASPX文件怎么打开

win10预览版怎么安装?win10预览版安装方法大全

Linux命令之文件切割命令:split使用介绍

html5 canvas 使用示例

30个开发人员有用的CSS代码片段整理值得借鉴

JavaScript获取路径设计源码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值