ASP 后台动态生成的DIV框,如何在后台重新修改它的样式

时间:2023-02-06 13:26:28
string autodiv = "<div id=\""+(big+1)+"\" runat=\"server\" style=\"border: 1px solid #FF0000\">";
 Label1.Controls.Add(new LiteralControl(autodiv));

这样生成出来的DIV如图 ASP 后台动态生成的DIV框,如何在后台重新修改它的样式
在运行的界面查看源码是这样的显示效果:
<div id="1" runat="server" style="border: 1px solid #FF0000"><table>
<tr><td align=left style="float:left">题目1:</td>
<td align=left  style="float:left"><span id="ContentPlaceHolder1_0">您的性别:  *</span></br><input id="ContentPlaceHolder1_RadioButton00" type="radio" name="ctl00$ContentPlaceHolder1$0" value="RadioButton00" /><label for="ContentPlaceHolder1_RadioButton00">男</label></br><input id="ContentPlaceHolder1_RadioButton01" type="radio" name="ctl00$ContentPlaceHolder1$0" value="RadioButton01" /><label for="ContentPlaceHolder1_RadioButton01">女</label></br></td>
</tr></table></div>

我原本是想这样用的 
                            //string myColor;
                            //int yangshi=big+i;
                            //AttributeCollection myAttributes =this.yangshi.Attributes;
                            //myColor = "blue";
                           //myAttributes.CssStyle.Add("background-color", myColor);
但是在this.yangshi.Attributes这个地方就会报错了。
我想知道怎么样更新div的样式,这个div是通过label控件的Controls.Add方法生成的!


11 个解决方案

#1


你写的那个runat=... 有什么用?

#2


实现 不了。

#3


引用 1 楼 sp1234 的回复:
你写的那个runat=... 有什么用?

不声明的话不是服务器控件,就只是一个html标签而已呀,可是写了还是无效

#4


引用 3 楼 cs15999953421 的回复:
Quote: 引用 1 楼 sp1234 的回复:

你写的那个runat=... 有什么用?

不声明的话不是服务器控件,就只是一个html标签而已呀,可是写了还是无效


你写了它也不是服务器控件。你这写的不过是输出到客户端html里的一个普通的字符串,什么控件都不算是啊。

#5


后台定义个属性DivStyle

前台
<div id="1"  style="<%=DivStyle%>">

#6


楼上方法应该可以吧

#7


该回复于2014-06-10 09:11:24被管理员删除

#8


该回复于2014-06-10 09:11:25被管理员删除

#9


LiteralControl 类
表示 HTML 元素、文本和 ASP.NET 页中不需要在服务器上处理的任何其他字符串。

#10



<div id="1"  style="<%=GetDivStyle()%>"> 

#11


你后台都那样写了,你还写runat做什么?这个是在HTML里才可以写的,你在后台写这个没用,还有改样式,你可以弄一个方法进去啊,,在方法里面改样式就行,比如string autodiv = "<div id=\""+(big+1)+"\" runat=\"server\" style=\"“+GetDivStyle()+”">";  这样就行

public  string GetDivStyle(){

string stylestr="border: 1px solid #FF0000";
stylestr=""
retrun stylestr;
}

#1


你写的那个runat=... 有什么用?

#2


实现 不了。

#3


引用 1 楼 sp1234 的回复:
你写的那个runat=... 有什么用?

不声明的话不是服务器控件,就只是一个html标签而已呀,可是写了还是无效

#4


引用 3 楼 cs15999953421 的回复:
Quote: 引用 1 楼 sp1234 的回复:

你写的那个runat=... 有什么用?

不声明的话不是服务器控件,就只是一个html标签而已呀,可是写了还是无效


你写了它也不是服务器控件。你这写的不过是输出到客户端html里的一个普通的字符串,什么控件都不算是啊。

#5


后台定义个属性DivStyle

前台
<div id="1"  style="<%=DivStyle%>">

#6


楼上方法应该可以吧

#7


该回复于2014-06-10 09:11:24被管理员删除

#8


该回复于2014-06-10 09:11:25被管理员删除

#9


LiteralControl 类
表示 HTML 元素、文本和 ASP.NET 页中不需要在服务器上处理的任何其他字符串。

#10



<div id="1"  style="<%=GetDivStyle()%>"> 

#11


你后台都那样写了,你还写runat做什么?这个是在HTML里才可以写的,你在后台写这个没用,还有改样式,你可以弄一个方法进去啊,,在方法里面改样式就行,比如string autodiv = "<div id=\""+(big+1)+"\" runat=\"server\" style=\"“+GetDivStyle()+”">";  这样就行

public  string GetDivStyle(){

string stylestr="border: 1px solid #FF0000";
stylestr=""
retrun stylestr;
}