UltraWebGrid使用总结

删除数据提示以及查询出删除条件

function RowDel(id) 

var row = igtbl_getActiveRow("UltraWebGrid1"); 

var ApplyID = "", tmpstr = ""; 

var Fid=document.Form1.ProId.value;

tmpstr = "RejectReportAdd.aspx?Opre=del&ProId="+Fid;

if(row!=null) 

{

 if(confirm("您确定要删除记录删除后不可恢复")) 

ApplyID = row.getCellFromKey("FID").getValue(); 

tmpstr += "&FID="+id;

 } 

else 

{

 return false;

 } 

Else

 { 

alert("请选择需要删除的记录"); 

return false; 

this.location.href=tmpstr; 

}

 

实现页面的刷新

1 将页面跳转路径前加一个变量接受页面跳转后传回的数据。

例如

var s=window.showModalDialog("RejectReportAdd.aspx?Opre=Rowupdate&FID="+id+"&Pr

oId="+document.Form1.ProId.value,window,"dialogWidth=900px;dialogheight=250px;");

2 判断上面定义的变量是否为空

例如

if(s!=null) 

{

window.open("PrjReportList.aspx?prjid="+Fid,"_self");

}

3 在第一步跳转到的页面内在当前页面要跳转到原页面之前加入以下代码

this.Page.RegisterStartupScript("","<script>alert('数 据 已 保 存 

');window.close();window.returnValue=1;</script>");

当页面数据加载时将页面每一行加入修改和删除 解决方法

(1) 添加UltraWebGrid1_InitializeRow事件

(2) 在该事件中加入以下代码

string id=Convert.ToString(e.Row.Cells.FromKey("FID").Value);

e.Row.Cells.FromKey("RowsUpdate").Text="<a title='修改' href=#' onclick='RowUpd("+id+")'>修

改</a>";

e.Row.Cells.FromKey("RowsDel").Text="<a title='删除' href='#' onclick='RowDel("+id+")'>删除

</a>";

其中id是当前该行数据的主键用来对数据处理的依据。 附件的上传下载删除、查看

1 在该页面内加入框架见以下代码

<IFRAME id="FileEditFm" style="Z-INDEX: 144; LEFT: 8px; WIDTH: 500px;

POSITION: absolute; TOP: 8px; HEIGHT: 112px" src="" frameBorder="0" width="500"

scrolling="no" height="200" name="FileEditFm"></IFRAME>

2 在框架代码后加入4个隐藏域

<INPUT id="hdnDataID" style="Z-INDEX: 139; LEFT: 520px; WIDTH: 24px; POSITION:

absolute; TOP: 64px; HEIGHT: 21px" type="hidden" size="1" name="hdnDataID"

runat="server">

<INPUT id="hdFileUpInfoList" style="Z-INDEX: 147; LEFT: 344px; WIDTH: 24px;

POSITION: absolute; TOP: 136px; HEIGHT: 21px" type="hidden" size="1"

name="hdFileUpInfoList" runat="server">

<INPUT id="hdFileDelIDList" style="Z-INDEX: 146; LEFT: 296px; WIDTH: 24px;

POSITION: absolute; TOP: 136px; HEIGHT: 21px" type="hidden" size="1"

name="hdFileDelIDList" runat="server">

<INPUT id="hdnAddNew" style="Z-INDEX: 138; LEFT: 520px; WIDTH: 24px; POSITION: absolute; TOP: 24px; HEIGHT: 21px" type="hidden" size="1"

name="hdnAddNew" runat="server">

3 在隐藏域下面加入一个附件上传的按钮

<A class="MrDocButton" id="A3" style="Z-INDEX: 101; LEFT: 200px; WIDTH: 65px;

POSITION: absolute; TOP: 136px; HEIGHT: 21px" Click()" href="#" name="btnAdd"

runat="server" ms_positioning="FlowLayout"> 确定</A>

4 在页面head之间加入以下js代码

<script language="javascript">

function InitFileEditorFrame()

{

var sDataTableName = "PT_CRBC_AccidentReport"; 

//业务数据表的名称平台的文件系统以此表名和下面的数据记录ID定位其关联的文

var sDataRecordID = "-1";  

//如果是新添加数据记录

if (Form1.hdnAddNew.value=="" && Form1.hdnDataID.value!="") 

{

//如果不是新添加数据得到当前要显示或修改的数据记录的主键ID

sDataRecordID = Form1.hdnDataID.value;

}

var sEditFlag="2"; 

//调用方式:0 仅允许浏览下载、1 仅允许删除和上传、2 可同时浏览下载或删除上传

var sFileInfoParam = sDataTableName + "," + sDataRecordID +"," + sEditFlag;

FileEditFm.location.href = "http://www.cnblogs.com/Commons/ObjectFinder/FileEditor.aspx?FilesInfo=" +

sFileInfoParam;

}

function ProcessFileEditorData()

{   

   

//页面数据提交到服务端之前获取文件附件相关的数据要删除的文件ID列表以及

要上传的文件信息 

Form1.hdFileDelIDList.value=FileEditFm.GetDelID();

Form1.hdFileUpInfoList.value=FileEditFm.GetUPFileInfo();

}

function btnOKClick()

{   

//btnOK.href = "#"

//if(CheckInputValid()){

//页面数据提交到服务端之前获取文件附件相关的数据

ProcessFileEditorData();

//页面数据提交到服务端之前获取Html编辑器的html内容

//ProcessWebEditorData()

//btnOK.href = "javascript:__doPostBack('btnOK','')";

//else {

alert("请重新输入");

}

}

</script>

5 在附件提交按钮上添加点击事件

添加以下代码

//处理“向通知公告”栏目发布内容

//string sBroadMsgParam="";

Morrowsoft.Commons.ObjectFinder.FileUpInfo FileUpInfoObj=new

Morrowsoft.Commons.ObjectFinder.FileUpInfo();

//业务数据表的名称平台的文件系统以此表名和下面的数据记录ID定位其关联的文件

FileUpInfoObj.TableName = "PT_CRBC_AccidentReport";     

//数据表的名称

//数据记录ID即附件主人ID注意如果是新增的一条数据则插入数据到数据表后需重

新取得该ID避免该ID为空。

FileUpInfoObj.KeyValue = this.hdnDataID.Value;

//附件操作完后跳转页,注意使用相对于 Commons/ObjectFinder/FileSavePage.aspx 的相对

路径

FileUpInfoObj.RedirectUrl = "http://www.cnblogs.com/Source/MyTest2/PrjACBaseEdit.aspx";

//附件所属模块文件存储路径以大于10000小于65535的数字命名不同业务模块应使用

不同数字便于磁盘文件分类存储

ileUpInfoObj.RootID ="10001";                    

//从客户端得到的要删除和上传的文件信息

FileUpInfoObj.UpFileInfoList = hdFileUpInfoList.Value;   

FileUpInfoObj.DeleteFileID = hdFileDelIDList.Value;

//通过 Session 传递需要处理的附件以及相关信息

Session["PostInfo"]=FileUpInfoObj.GetextendedAttribute();

//跳转到附件处理页面处理完成后会跳转回上面定义的跳转页

Response.Redirect("http://www.cnblogs.com/Commons/ObjectFinder/FileSavePage.aspx");

在表格下方插入新的一行

function RowsAdd()

{

var Grid=igtbl_getGridById("UltraWebGrid1");

var NewRow=igtbl_addNew("UltraWebGrid1",0);

} 向表格的列中加入下拉菜单

1 加入固定的字符

Infragistics.WebUI.UltraWebGrid.ValueList CostList=new

Infragistics.WebUI.UltraWebGrid.ValueList(true);

CostList2.ValueListItems.Add("当地","当地");

CostList2.ValueListItems.Add("进口","进口");

UltraWebGrid1.Columns.FromKey("FMRCome").Type=Infragistics.WebUI.UltraWebGrid

.ColumnType.DropDownList;

UltraWebGrid1.Columns.FromKey("FMRCome").AllowUpdate=Infragistics.WebUI.Ultra

WebGrid.AllowUpdate.Yes;

UltraWebGrid1.Columns.FromKey("FMRCome").ValueList=CostList2;

2 加入动态的字符

Infragistics.WebUI.UltraWebGrid.ValueList CostList=new

Infragistics.WebUI.UltraWebGrid.ValueList(true);

//从材料表中查询材料信息

string strSql="select F_kmmc,f_kmbm,F_UNIT from pmt_xx_clkm where F_TYPE =1 and

F_ID not in(select F_PID from pmt_xx_clkm)";

DataSet rs=Morrowsoft.DB.DataAccess.dataSet(strSql);

string count=rs.Tables[0].Rows.Count.ToString();

//将材料名称从数据库中取出放入到材料名称列中

for(int i=0;i<rs.Tables[0].Rows.Count;i++)

{

String

bmdw=rs.Tables[0].Rows[i]["f_kmbm"].ToString()+","+rs.Tables[0].Rows[i]["F_UNIT

"].ToString();

CostList.ValueListItems.Add(bmdw,rs.Tables[0].Rows[i]["F_kmmc"].ToString());

}

rs.Clear();

//设置材料编号的属性当用户点击材料编号时出现下拉菜单。

UltraWebGrid1.Columns.FromKey("F_KMMC").Type=Infragistics.WebUI.UltraWebGrid.

ColumnType.DropDownList;

UltraWebGrid1.Columns.FromKey("F_KMMC").AllowUpdate=Infragistics.WebUI.UltraW

ebGrid.AllowUpdate.Yes;

UltraWebGrid1.Columns.FromKey("F_KMMC").ValueList=CostList;

添加自动增长列

if(ds.Tables[0].Rows.Count>0&&ds.Tables[0].Rows[0][0].ToString()!="")

 FID=Convert.ToInt32(ds.Tables[0].Rows[0][0].ToString())+1; }

else

{

 FID=1;

}

 

当选中某个单元格时选中一整行

选择UltraWebGrid-displayout CellClickActionDefault=RowSelected

 

想表格中加入日期选择框

1 拖一个日期框到表格的页面。

2 在要添加日期框的列添加以下代码

<igtbl:UltraGridColumn HeaderText="导 入 时 间" Key="FMRCDate"

EditorControlID="WebDateChooser1" Type="Custom"

Format="MM/dd/yyyy" DataType="System.DateTime" BaseColumnName="FMRCDate"

AllowUpdate="Yes"></igtbl:UltraGridColumn>

 

 

HeaderText--------列名

EditorControlID--------第一步中拖入页面的日期框的ID

Type--------显示类型

Format-------显示格式

DataType--------数据类型

AllowUpdate-------是否可以更改

 

页面加入checkBox InitializeLayout事件里面加入

gridView.Columns.Add("F_SELFID");

    gridView.Columns.FromKey("F_SELFID").HeaderText = "<Input type='checkbox'

id='ck' onClick='AllCheck()' value='0'>";

    gridView.Columns.FromKey("F_SELFID").Width = new Unit("50px");

    gridView.Columns.FromKey("F_SELFID").Move(0);

  

 gridView.Columns.FromKey("F_SELFID").Type=Infragistics.WebUI.UltraWebGrid.ColumnType.Ch

eckBox;

  

 gridView.Bands[0].Columns.FromKey("F_SELFID").AllowUpdate=Infragistics.WebUI.UltraWebGrid.AllowUpdate.Yes;

  

 gridView.Columns.FromKey("F_SELFID").CellStyle.HorizontalAlign=HorizontalAlign.Center;

    //禁止排序

    gridView.Columns[0].SortIndicator =

Infragistics.WebUI.UltraWebGrid.SortIndicator.Disabled;

 

前台读取的时候 var grid=igtbl_getGridById("AccessoryGrid"); for(var i = 0;i < grid.Rows.length;i++){ var rw = grid.Rows.getRow(i); var

isSel=rw.getCellFromKey("F_SELFID").getValue(); if (isSel == true) {}

 

前台的全选方法

function AllCheck() { var status =Form1.ck.checked; var grid =

igtbl_getGridById("AccessoryGrid"); for(i = 0; i < grid.Rows.length; i++) { var row =

grid.Rows.getRow(i); row.getCellFromKey("F_SELFID").setValue(status); } }

posted on 2013-03-31 15:51  胡福鹏  阅读(1273)  评论(0)    收藏  举报