如何在 asp.net 后台代码中为前台页面动态增加服务器控件?

开发想法:想做一个产品系统,不同分类的产品有不同的属性,所以在增加产品的时候,因为选择分类的不同,功能上需要根据分类动态的出来不同的属性控件框,以供填写具体的产品属性值。... 开发想法:
想做一个产品系统,不同分类的产品有不同的属性,所以在增加产品的时候,因为选择分类的不同,功能上需要根据分类动态的出来不同的属性控件框,以供填写具体的产品属性值。
注:不同分类的属性被我存在了另一个数据库表中。
难点:我不知道如何通过分类的ID值在后台代码中动态生成前台代码!我的前台代码是有格式要求的,如:
<p>
<label>属性1:</label>
<asp:Textbox runat="server" ID="Param1"></asp:Textbox>
</p>
望高手赐教,诚挚感谢!
展开
 我来答
百度网友8b1b6824b
推荐于2017-10-08 · TA获得超过2121个赞
知道小有建树答主
回答量:554
采纳率:100%
帮助的人:299万
展开全部
增加产品,不同分类的产品,出现不同的产品属性框,应该还是可添加和删除产品属性框的。

实现方法有两种:
1、多放几个Label和Textbox,根据数据库中的产品属性多少,隐藏掉不需要的Label和Textbox,对需要的Label和Textbox的属性进行赋值在后台代码中也很容易实现。

2、先放一个Panel,比如Panel9,然后用 Label labeln = new Label(); Textbox textboxn=new Textbox();来创建新控件,用对labeln.ID、labeln.Text、textboxn.ID、textboxn.Text的赋值语句来放上产品的属性,最后用Panel9.Controls.Add(labeln);Panel9.Controls.Add(textboxn);来往页面上动态增加刚才新建的服务器控件。
更多追问追答
追问
非常感谢,说的非常详细,我想再追问一下:
因为为了格式上的需要,我需要生成这样这样的代码

属性1:

那这个P的标签用第2种方法的话,如何生成出来呢?或者说如何赋给Panel控件呢?还有就是如何生成Label在P标签内?
如果可以的话,希望能够交个朋友,我的邮箱:green120@163.com
追答
要精确控制生成的客户端HTML代码,可以使用Response.Write("...");

朋友,欢迎!
解忧解忧杂货铺
2012-04-13 · TA获得超过590个赞
知道小有建树答主
回答量:1536
采纳率:33%
帮助的人:689万
展开全部
StringBuilder sb = new StringBuilder(); 输出吧。
sb.Append("<ul>");
sb.AppendLine();
for (int i = 0; i < dt.Rows.Count; i++)
{
sb.Append("<li style=\"line-height:26px;background:url('/image/news/dian2.jpg') no-repeat 14px 11px;padding-left:22px;height:26px;white-space: nowrap;text-overflow: ellipsis;overflow:hidden;text-align:left\">");
sb.Append("<a href=\"" + dt.Rows[i]["newsPath"].ToString() + "\" target=\"_blank\">");
sb.Append(dt.Rows[i]["title"].ToString());
sb.Append("</a>");
sb.Append("</li>");
sb.AppendLine();
}
sb.Append("</ul>");
context.Response.Write(sb.ToString());
用ajax吧 返回StringBuilder 然后前台给个div填充html就好了吧
追问
我是初学,虽然能够似乎看明白,但不会用,可否方便留个联系方式给我,我直接联系,拜托。如果不方便留联系方式,你可以发消息到我邮箱,这样我联系你。green120@163.com
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hhythink
2012-04-05 · TA获得超过319个赞
知道小有建树答主
回答量:186
采纳率:0%
帮助的人:123万
展开全部
楼上的已经说的很详细了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式