我有这样的数据库行“val1-val2-val5”,在我的aspx页面中我得到了5个div(他们的id的val1,val2,val3 ......等),所有这些都是可见的假。我希望通过基于信息的数据库行显示它们。
我使用这种方法;
string query = @"SELECT [Params]
FROM [Products] WHERE Id = '"+id+"'";
string result= Library.Database.ExecuteScalar(query).ToString();
string[] results;
results= result.Split('-');
foreach (var item in results)
{
switch (item)
{
case "val1": val1.Visible = true;
break;
case "val2": val2.Visible = true;
break;
case "val3": val3.Visible = true;
break;
case "val4": val4.Visible = true;
break;
case "val5": val5.Visible = true;
break;
}
}
我想知道是否有办法在没有“switch-case”的情况下执行此操作,例如
foreach (Literal item in results)
{item.visible = true }
谢谢..
答案 0 :(得分:0)
嗯。你可以尝试这样的事情。
foreach(var item in results)
{
Control Div_In_the_Page = FindControl(item);
if(Div_In_the_Page != null)
Div_In_the_Page.visible = true;
}
这只是模拟你可以尝试的东西。我不完全确定
Div_In_the_Page.visible = true; //dont know if this will work. Else just use the css attributes to sort that out
当您想要从服务器端编辑div时,需要确保使用div的一件事是确保div具有此属性
<div runat="server"><!-- put things in here --></div>