ASP.NET怎样获取没有runat="server"属性的HTML元素,并改变它的值?

dongjunhui2010 2012-08-29 09:37:35
前提是完全不用服务器控件,
一直以来想要后台能获取到HTML元素的值,就给它加上runat="server"属性,可是应该怎样在后台代码中获取没有runat="server"属性的HTML元素,并修改它的值,在页面中体现出来?我能想到的只有ajax。还有其他方法吗?
...全文
352 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
dongjunhui2010 2012-08-30
  • 打赏
  • 举报
回复
谢谢各位的回答,因为我想知道怎样改变而不是获取值,所以有的回答不能给分了。
杰拉尔 2012-08-29
  • 打赏
  • 举报
回复
form表单提示 就算是你控件也是对form的一个封装 后来Request["id"]接收
<input name="id"> 指定控件name
dongjunhui2010 2012-08-29
  • 打赏
  • 举报
回复

有一种方法就是前台用<%=str1 %>,后台直接输出HTML代码,这样就能任意修改输出的控件和它的值了
  • 打赏
  • 举报
回复
页面提交 GET Post,后台接受 Request

而纯静态改变页面控件值,就是发送请求到处理程序,然后得到返回结果并赋值的过程,也就是js+ajax
天殇月痕 2012-08-29
  • 打赏
  • 举报
回复
好像只能用AJAX吧。。。
dongjunhui2010 2012-08-29
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
通过Page.Controls[i].Controls[j]...一级一级进去可以找所有的runat= "server "的控件.

你要做的是找到你要的那个元素的上一个或者下一个有runat= "server "的控件,然后把索引+1或-1,得到的是一个文本控件, 直接给Text赋值就可以修改到没有runat= "server "的位置.比如
<html>
<head> </head……
[/Quote]
可是完全没有有runat="server"属性的控件,就是完全不用服务器控件
syeerzy 2012-08-29
  • 打赏
  • 举报
回复
通过Page.Controls[i].Controls[j]...一级一级进去可以找所有的runat="server"的控件.

你要做的是找到你要的那个元素的上一个或者下一个有runat="server"的控件,然后把索引+1或-1,得到的是一个文本控件, 直接给Text赋值就可以修改到没有runat="server"的位置.比如
<html>
<head></head>
<body>
<form....>
<asp:button ...runat="server">
<br>
<input type=button >
<br>
<asp:button....runat="server">

这样你会取到一个文本控件, Text是 "<br>\r\n<input type=button >\r\n<br>" 然后你修改这个text就是了,注意一点,这里面是两个runat=server之间的所有html标签, 可能有很多各种控件,而不是一个,你需要自己用正则或者字符串截取去访问你要的那个
村长_乐 2012-08-29
  • 打赏
  • 举报
回复
Request.QueryString[""]



龙火 2012-08-29
  • 打赏
  • 举报
回复
在后台代码是没有办法获取没有runat="server"属性的HTML元素,只能用JS获取,后台传参数
xmhxjjq 2012-08-29
  • 打赏
  • 举报
回复
楼上+1 跟AJAX感觉差不多。。

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧