后台获取不到div的id

兰峰如月 2014-08-28 06:05:57
后台控制div的显现和隐藏,但是一直获取不到,错误如下!

后台代码:

string cuxiaosql = string.Format("select top 30 p.id,p.name ,s.name as sname,p.yprice,p.sprice,p.yycount,p.isrexiao from [Product] p, shop s where s.id=p.shopid and state=1 order by p.addtime desc");
DataTable cuxiaodt = Access.ExecuteDataTable(cuxiaosql, null);
if (cuxiaodt.Rows.Count > 0)
{

Repeater4.DataSource = cuxiaodt;
Repeater4.DataBind();
int num = Convert.ToInt32(cuxiaodt.Rows[0]["isrexiao"]);
if(num == 0)
{
//div11.Attributes.Add("style","display:none");
div11.Style.Add("display", "none");
}

}


前台代码


<div class="protop">
<ul id="protop" >
<asp:Repeater ID="Repeater4" runat="server"
onitemdatabound="Repeater4_ItemDataBound">
<ItemTemplate>
<li style="position:relative;">
<div id="div11" runat="server" style="position:absolute;">
<img src="images/20130606A.png" />
</div>
<div class="com-img"> <a title="" target="_blank" href='product.aspx?id=<%#Eval("id")%>' >
<asp:Image ID="Image1" runat="server" width="160" height="160" class="dynload" />
<asp:Label ID="Label1" runat="server" Text='<%#Eval("id")%>' style="display:none"></asp:Label>

</a> </div>




请各位大神帮看看,谢谢了!!!
...全文
296 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
云中客 2014-08-29
  • 打赏
  • 举报
回复
前台对象的获取,需要用搜索对象的方法来实现,所以最初的代码是错误的;前后台交互的方法,可以能过定义变量的方法来实现
暗尘掩月 2014-08-29
  • 打赏
  • 举报
回复
而且div 后台是无法转换类型的 你的换成panle 或者 PlaceHolder 或者其他的控件 div 可以 转换为 HtmlGenericControl  类型
暗尘掩月 2014-08-29
  • 打赏
  • 举报
回复
要么 this.Repeater4.FindControl("div11") 这样 然后as 转换 要么 放在 Repeater4_ItemDataBound 事件中去获取 if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item) { e.Item.FindControl("div11") }
暗尘掩月 2014-08-29
  • 打赏
  • 举报
回复
repeat 里面的 服务器控件 你这样获取肯定是不行的
jun471537173 2014-08-29
  • 打赏
  • 举报
回复
看下CodeBehind和Inherits跟代码文件、命名空间是否对得上
qxyywy 2014-08-29
  • 打赏
  • 举报
回复
多了 服务器标记 没注意 直接拷贝的你的源码
qxyywy 2014-08-29
  • 打赏
  • 举报
回复
<div id="div11" style="position:absolute; display:<%=divIsShow?"block":"none"%>;">
                        <img src="images/20130606A.png" />
                       </div>
兰峰如月 2014-08-29
  • 打赏
  • 举报
回复
有大神过来帮帮忙吧
兰峰如月 2014-08-29
  • 打赏
  • 举报
回复
引用 2 楼 qxyywy 的回复:
<div id="div11" runat="server" style="position:absolute; display:<%=divIsShow?"block":"none"%>;">
                        <img src="images/20130606A.png" />
                       </div>
这个不对吧,试了一下,错误提示为“服务器标记不能包含 <% ... %> 构造。”
兰峰如月 2014-08-29
  • 打赏
  • 举报
回复
引用 3 楼 devmiao 的回复:
有没有将div设置为runat=server
设置了呀,id=div11那块已经设置了
devmiao 2014-08-28
  • 打赏
  • 举报
回复
有没有将div设置为runat=server
qxyywy 2014-08-28
  • 打赏
  • 举报
回复
<div id="div11" runat="server" style="position:absolute; display:<%=divIsShow?"block":"none"%>;">
                        <img src="images/20130606A.png" />
                       </div>
qxyywy 2014-08-28
  • 打赏
  • 举报
回复
你要用服务器控件 可以用panel 另外一般这种在后台设置一个值 如divIsShow
if(num == 0)
                {
                    //div11.Attributes.Add("style","display:<%=divIsShow?"block":"none"%>");
                    divIsShow=false;
                    }
前台处理:
<div  style="position:absolute;">
                        <img src="images/20130606A.png" />
                       </div> 

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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