今天费了很大的劲儿才搞定!下面贴出代码和总结:

1.首先是前台代码:

<%@ Page Title="" Language="C#" MasterPageFile="~/Main.Master" AutoEventWireup="true" CodeBehind="CategoryList.aspx.cs" Inherits="Bridgetree.Admin.CategoryList" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
<script language=javascript> function edit(c_id) {/*此处的c_id为某一控件对象,因为传入的值为this*/ var lb_Edit_ID = c_id.id;/*取控件的id属性值*/
var ids = lb_Edit_ID.substring(lb_Edit_ID.lastIndexOf("_") + 1, lb_Edit_ID.length);/*获取数据库的ID字段*/
var CategoryID = $("span[ID='lbl_CategoryID_" + ids + "']").text();
/*根据id取文本值。
注:
  • text() - 设置或返回所选元素的文本内容(即设置或获取标签内的文本)
  • html() - 设置或返回所选元素的内容(包括 HTML 标记)
  • val() - 设置或返回表单字段的值(即设置或获取控件的文本)
  • 详情点击
*/

            var Category = $("span[ID='lbl_Category_" + ids+ "']").text();
/*alert($("#lbl_Category_" + ids).text());*/
var HourlyCost = $("span[ID='lbl_HourlyCost_" + ids + "']").text();
var BillingRate = $("span[ID='lbl_BillingRate_" + ids + "']").text(); $("#hf_CategoryID").val(CategoryID);/*设置控件的文本*/
$("#tb_Category").val(Category);
$("#tb_HourlyCost").val(HourlyCost);
$("#tb_BillingRate").val(BillingRate); /*var rate = document.getElementById("rate_" + id) rate.readOnly = false;
rate.style.backgroundColor = "white" e = document.getElementById("BtnEdit_" + id)
e.disabled = true; e = document.getElementById("BtnUpd_" + id)
e.disabled = false; rate.focus();*/
}
</script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server" ClientIDMode="Static">
<table id="conversionTable" class="tableCommon table-hover" width="100%">
<asp:Repeater ID="rpt_CategoryList" runat="server" OnItemDataBound="rpt_CategoryList_ItemDataBound">
<HeaderTemplate>
<tr>
<th>Category</th>
<th>HourlyCost($)</th>
<th>BillingRate</th>
<th>Edit</th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><asp:Label runat="server" ID="lbl_Category" Text='<%#Eval("Category1") %>'></asp:Label><asp:Label runat="server" ID="lbl_CategoryID" style="display:none;" Text='<%#Eval("CategoryID") %>'></asp:Label></td>
<td><asp:Label runat="server" ID="lbl_HourlyCost" Text='<%#Eval("HourlyCost") %>'></asp:Label></td>
<td><asp:Label runat="server" ID="lbl_BillingRate" Text='<%#Eval("BillingRate")%>'></asp:Label></td>
<td>
<asp:LinkButton runat="server" ID="lb_Edit" href="#TB_inline?height=300&width=400&inlineId=myOnPageContent" Class="thickbox" OnClientClick="edit(this);">Edit</asp:LinkButton></td> /*此处需要注意:该标签会先执行onclick事件,然后再去执行href*/
</tr>
</ItemTemplate>
</asp:Repeater> </table>
<div id="myOnPageContent" style="display:none;">
<input type="hidden" id="hf_CategoryID" runat="server"/>
<p>Category:<input id="tb_Category" readonly="true" /></p>
<p>HourlyCost($):<input id="tb_HourlyCost"/></p>
<p>BillingRate($):<input id="tb_BillingRate"/></p>
<asp:Button runat="server" ID="btn_Save" Width="50px" Text="Save" OnClick="btn_Save_Click"/>
</div> </asp:Content>

2.后台代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; namespace Bridgetree.Admin
{
public partial class CategoryList : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
this.rpt_CategoryList.DataSource = PCS.DAL.EF.Repository.GetInstance().GetCategoryList();
this.rpt_CategoryList.DataBind();
} protected void rpt_CategoryList_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)//**
{
Label lbl_CategoryID = e.Item.FindControl("lbl_CategoryID") as Label;
Label lbl_Category = e.Item.FindControl("lbl_Category") as Label;
Label lbl_HourlyCost = e.Item.FindControl("lbl_HourlyCost") as Label;
Label lbl_BillingRate = e.Item.FindControl("lbl_BillingRate") as Label;
LinkButton lb_Edit = e.Item.FindControl("lb_Edit") as LinkButton;
if (lbl_CategoryID != null && lbl_Category != null && lbl_HourlyCost != null && lbl_BillingRate != null && lb_Edit != null)
{
/*此处ID在被解释成静态之后会变成控件的name和id属性,
* 而且嵌套在模板页中的控件会自动添加上<content>的ID值(例如:<input name="ctk100$BodyContent$RealName" id="BodyContent_RealName" />)
* ,若套在模板页中需要在<content>中添加ClientIDMode="Static",这样ID就只对应静态控件的ID属性*/
lbl_CategoryID.ID = "lbl_CategoryID_" + lbl_CategoryID.Text;
lbl_Category.ID = "lbl_Category_" + lbl_CategoryID.Text;
lbl_HourlyCost.ID = "lbl_HourlyCost_" + lbl_CategoryID.Text;
lbl_BillingRate.ID = "lbl_BillingRate_" + lbl_CategoryID.Text;
lb_Edit.ID = "lb_Edit_" + lbl_CategoryID.Text;
//lb_Edit.Attributes.Add("onclientclick", "edit(" + lbl_CategoryID.Text + ")");
}
}
}
}
}

3.最终效果

4.用到的文件:

http://files.cnblogs.com/ethanwill/jquery-tanchucengxiaoguoone.rar

DIV遮罩层传值的更多相关文章

  1. jquery实现div遮罩层

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. div 遮罩层 弹窗

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. JS+CSS简单实现DIV遮罩层显示隐藏【转藏】

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. JS+CSS简单实现DIV遮罩层显示隐藏

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. 在iframe内页面完全加载完后,关闭父页面生成的div遮罩层

    遮罩层div为iframe父页面生成,需在iframe内页面完全加载完后,关闭遮罩层 alertMsgClose() :函数为关闭遮罩层函数 此段代码在iframe页面内: <script> ...

  6. Jquery实现遮罩层,就是弹出DIV周围都灰色不能操作

    <%@ page language="java" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC & ...

  7. 前端小结(3)---- 添加遮罩层,并弹出div

    有如下div: <div id='pop-div' class="pop-box"> <div class="input-group has-info& ...

  8. 点击弹出div内容包括遮罩层

    效果: HTML: <!-- 添加分组按钮 -->             <div class="group_add" onclick = "docu ...

  9. 在HTML中实现和使用遮罩层

    Web页面中使用遮罩层,可防止重复操作,提示loading:也可以模拟弹出模态窗口. 实现思路:一个DIV作为遮罩层,一个DIV显示loading动态GIF图片.在下面的示例代码中,同时展示了如何在i ...

随机推荐

  1. boost linux 下安装

    1. 在boost 官网 http://www.boost.org/doc/libs/ 下载最新的boost 安装包 2. 解压至 /usr/local/ 目录下 3. cd /usr/local/b ...

  2. 基于BOOST 实现并发服务器框架

    一:设计思路 本服务器框架使用 UDP 传输协议,程序柱线程等待客户端数据,并将数组存取队列缓冲区.另外可开启多个工作线程,工作线程可以依据具体项目实现不同的功能 ,例如可以将队列缓冲区中的数据逐个取 ...

  3. 一个令人困惑的低效SQL

    整理之前的优化案例,觉得下面这个应该是开发很难发现也会很困惑的一个低效SQL. 看下面这个SQL.你看到这个SQL会不会感觉很正常.其实我刚看到也觉得正常得不得了.但是测试后它确实效率很低.selec ...

  4. 常用面试sql语句

    1.编写一条sql语句,要修改一个字段的俩个值,比如把字段sex中的男改为女,女改为男. update m set m=(case when m='男' then '女' else '男' end) ...

  5. NGUI系列教程一

    NGUI是Unity的一个插件,使用它来制作你的游戏UI必定将事半功倍.为什么这么说呢?首先我们说说GUI与NGUI的区别,GUI是Unity自带的绘制界面工具,它的成像原理是基于表层的,所以执行效率 ...

  6. ps 命令使用总结

    ps命令用来查看进程信息,它是类似于快照类型的只显示一次,如果想及时刷新请用top命令. 1. 常用参数列表 -a 显示所有终端机下执行的进程,除了阶段作业领导者之外. a 显示现行终端机下的所有进程 ...

  7. 控件动态产生器(使用RegisterClasses提前进行注册)

    代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-- ...

  8. Form - 遍历行

    go_block('block_name'); first_record; LOOP   message(:block_name.item);   if :system.last_record  = ...

  9. poj3368Frequent values(RMQ)

    http://poj.org/problem?id=3368 追完韩剧 想起这题来了 想用线段树搞定来着 结果没想出来..然后想RMQ 想出来了 算是离散吧 把每个数出现的次数以及开始的位置及结束的位 ...

  10. PICK定理模板

    PICK定理: S=I+O/2-1 S为多边形面积,I多边形内部的格点,O是多边形边上的格点 其中边上格点求法: 假设两个点A(x1,y1),B(x2,y2) 线段AB间格点个数为gcd(abs(x1 ...