zoukankan      html  css  js  c++  java
  • 牛腩购物 8 整合用户留言 动软生成器 ,.NET在后置代码中输入JS提示语句(背景不会变白),repeater 循环的时候事件判断,repeater 隔行 奇数行,item列,隐藏区块 Panel 的使用,前台绑定代码的时候使用函数

    用户留言表

    shop_guestbook :id,username,qq,sex,url,email,body,createdate,reply

    1:创建表

    image

    2:使用动软生成器,生成 Model层的 guestbook.cs 和 DAL层的 guestbookDAO.cs

    image

    image

    3:将生成的 Model代码和 DAL代码  拷贝到项目中,并修改一下代码。   快捷键  Ctrl+L  整行代码删除

    image

    如何解决呢?我们用到 .NET在后置代码中输入JS提示语句(背景不会变白)类似于AJAX的效果,页面不刷新!!!

    Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('验证码输入错误!');</script>"); 
    在后台,注册服务器端的脚本

    //添加成功
    //Response.Write("<script type='text/javascript'>alert('添加成功')</script>");  //这个不行,会导致页面白屏,并且会跑到前台页面的第一行,影响CSS
    
    Page.ClientScript.RegisterStartupScript(Page.GetType(), "message", "<script language='javascript' defer>alert('添加成功!');</script>"); 
    

    在repeater 循环的时候,如果有管理员回复,我们就显示回复,否则就隐藏

     

    前台代码如下,我们使用一个 Panel 来隐藏

    <asp:Panel ID="pnlReplay" runat="server">
               <tr> 
                    <td colspan="2" bgcolor="#CCCCCC" style="padding: 5px;">
                        <span class="redfont">管理员回复:</span><br />
                              &nbsp; &nbsp; 
                         <asp:Literal ID="litReplay" Text='<%#Eval("replay") %>' runat="server"></asp:Literal>
                      </td>
                 </tr>
          </asp:Panel>
    
     
     //当列表循环的时候
    
            protected void rep_ItemDataBound(object sender, RepeaterItemEventArgs e)
            {
                if (e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
                {
                    Panel pnlReplay = e.Item.FindControl("pnlReplay") as Panel;
    
                    Literal litReplay = e.Item.FindControl("litReplay") as Literal;
    
                    
                    if (litReplay.Text.Trim().Length == 0) //如果回复等于0  那么就隐藏
                    {
                        pnlReplay.Visible = false;
                    }
                    else
                    {
                        pnlReplay.Visible = true;
                    }
    
                     
                }
            }
    
     
    前台如果要判断是男孩还是女孩,那么我们绑定的数据里面 <%#Eval(“sex”)%> 的值只有 1和0,那么我们如何来判断头像并且给他赋值呢?
    我们在前台用函数的形式来判断和赋值
     
     <img src='images/<%#Getsex(Eval("sex")) %>' width="60" height="60" />
    

    这里我们绑定一个 Getsex 的函数,注意这个函数的写法

    protected string Getsex(object sex)
            {
                return sex.ToString() == "1" ? "boy.jpg" : "girl.jpg";
            }
    
  • 相关阅读:
    OPPO R9sPlus MIFlash线刷TWRP Recovery ROOT详细教程
    OPPO R11 R11plus系列 解锁BootLoader ROOT Xposed 你的手机你做主
    努比亚(nubia) M2青春版 NX573J 解锁BootLoader 并进入临时recovery ROOT
    华为 荣耀 等手机解锁BootLoader
    青橙 M4 解锁BootLoader 并刷入recovery ROOT
    程序员修炼之道阅读笔03
    冲刺8
    典型用户模板分析
    学习进度八
    冲刺7
  • 原文地址:https://www.cnblogs.com/iceicebaby/p/2382348.html
Copyright © 2011-2022 走看看