欢迎光临
我们一直在努力

全编辑WebGrid控件LrcGrid(4)—— 脚本库和样式表-ASP教程,数据库相关

建站超值云服务器,限时71元/月

全编辑webgrid控件lrcgrid(4)—— 脚本库和样式表

脚本库:包含了控件客户端操作的函数.包括:

将表格行切换到编辑模式的函数:chgeditrow(rowindex,tab)()

将表格列切换到编辑模式的函数:chgedit(colindex,tab)

在客户端构造更新数据库的sql语句: buildsql(tabname)

添加新记录的函数:addrow(tab)

移除新添加行的函数: removerow(tab)

全部js代码:

function chgeditrow(rowindex,tab)

{

var tabbody = tab.tbodies[0];

var ise = 0;

//alert(rowindex);

//alert(tabbody.rows[rowindex].cells.length);

for(var i = 0;i< tabbody.rows[rowindex].cells.length;i++)

{

//alert(tabbody.rows[rowindex].cells[i].childnodes[0].id);

if(tabbody.rows[rowindex].cells[i].haschildnodes())

{

if(tabbody.rows[rowindex].cells[i].childnodes[0].nodetype != 3)

{

if(tabbody.rows[rowindex].cells[i].childnodes[0].id.indexof(lrctb_) != -1)

{

if(!tabbody.rows[rowindex].cells[i].childnodes[0].disabled)

{

tabbody.rows[rowindex].cells[i].childnodes[0].disabled = true;

tabbody.rows[rowindex].cells[i].childnodes[0].classname = "lrc_txt_hid";

}

else

{

tabbody.rows[rowindex].cells[i].childnodes[0].disabled = false;

tabbody.rows[rowindex].cells[i].childnodes[0].classname = "lrc_txt_show";

}

}

else if(tabbody.rows[rowindex].cells[i].childnodes[0].id.indexof(lrcdrl_) != -1)

{

if(!tabbody.rows[rowindex].cells[i].childnodes[0].disabled)

{

tabbody.rows[rowindex].cells[i].childnodes[0].disabled = true;

}

else

{

tabbody.rows[rowindex].cells[i].childnodes[0].disabled = false;

}

}

}

}

}

}

function chgedit(colindex,tab)

{

var tabbody = tab.tbodies[0];

var onerow;

if(tabbody.rows[1].cells[colindex].childnodes[0].disabled)

{

for(var i=1;i<tabbody.rows.length-1;i++)

{

onerow = tabbody.rows[i];

if(onerow.cells[colindex].childnodes[0].id.indexof(lrctb_) != -1)

{

onerow.cells[colindex].childnodes[0].disabled = false;

onerow.cells[colindex].childnodes[0].classname = "lrc_txt_show";

}

else if(onerow.cells[colindex].childnodes[0].id.indexof(lrcdrl_) != -1)

{

onerow.cells[colindex].childnodes[0].disabled = false;

}

}

}

else

{

for(var i=1;i<tabbody.rows.length-1;i++)

{

onerow = tabbody.rows[i];

if(onerow.cells[colindex].childnodes[0].id.indexof(lrctb_) != -1)

{

onerow.cells[colindex].childnodes[0].disabled = true;

onerow.cells[colindex].childnodes[0].classname = "lrc_txt_hid";

}

else if(onerow.cells[colindex].childnodes[0].id.indexof(lrcdrl_) != -1)

{

onerow.cells[colindex].childnodes[0].disabled = true;

}

}

}

}

function buildsql(tabname)

{

var updsql = ;

var tabbody = tabname.tbodies[0];

var onerow;

var len = tabbody.rows.length;

var cellen = tabname.rows[0].cells.length;

var isadd = tabname.getattribute("isadd");

var isdel = tabname.getattribute("isdel");

if(isdel == true)

{

cellen = cellen -1;

}

var hidindex = 0;

if(isadd == true)

{

hidindex = 2;

}

var tabn = tabbody.rows[len-1].cells[hidindex].childnodes[1].value;

var coln = tabbody.rows[len-1].cells[hidindex].childnodes[2].value;

var colna = coln.split(",");

var prik = tabbody.rows[len-1].cells[hidindex].childnodes[3].value;

var prika = prik.split(",");

var editcol = tabbody.rows[len-1].cells[hidindex].childnodes[4].value;

var editcola;

if(editcol == lrcalledit)

{

var len = colna.length – prika.length;

editcola = new array(len);

var indexe = 0;

for(var i = 0 ; i< colna.length ; i++)

{

var ispri = 0;

for(var j=0;j<prika.length;j++)

{

if(prika[j] == i)

{

ispri = 1;

}

}

if(ispri == 0)

{

editcola[indexe] = i;

indexe++;

}

}

}

else

{

editcola = editcol.split(",");

}

var strupd = "update " + tabn + " set ";

var strins = "insert " + tabn + " (" + coln + ") values ( ";

for(var i=1;i<tabbody.rows.length-1;i++)

{

onerow = tabbody.rows[i];

//更新语句

if(onerow.id != "lrcnewrow")

{

updsql += strupd;

for(var j=0;j<editcola.length;j++)

{

updsql += colna[editcola[j]];

updsql += " = ";

if(onerow.cells[editcola[j]].firstchild.id.indexof(lrcdrl_) != -1)

{

updsql += onerow.cells[editcola[j]].firstchild.options[onerow.cells[editcola[j]].firstchild.selectedindex ].value;

}

else

{

updsql += onerow.cells[editcola[j]].firstchild.value;

}

if(j != editcola.length – 1)

{

updsql += ", ";

}

else

{

updsql += " ";

}

}

updsql += " where ";

for(var k=0;k<prika.length;k++)

{

updsql += colna[prika[k]];

updsql += " = ";

updsql += onerow.cells[prika[k]].firstchild.nodevalue;

if(k != prika.length – 1)

{

updsql += " and ";

}

else

{

updsql += " \r";

}

}

}

else //插入语句

{

updsql += strins;

for(var k=0;k<cellen;k++)

{

if(onerow.cells[k].firstchild.id.indexof(lrcdrl_) != -1)

{

var selv = onerow.cells[k].firstchild.options[onerow.cells[k].firstchild.selectedindex].value;

updsql = updsql + "" + selv + "";

}

else

{

updsql = updsql + "" + onerow.cells[k].firstchild.value + "";

}

if(k+1 != cellen)

{

updsql += ",";

}

else

{

updsql += ") \r";

}

}

}

}

var tabbody = tabname.tbodies[0];

var len = tabbody.rows.length;

tabbody.rows[len-1].cells[hidindex].childnodes[5].value = updsql;

return true;

}

function addrow(tab)

{

var tabbody = tab.tbodies[0];

var onerow;

var rowlen = tab.rows.length;

var cellen = tab.rows[0].cells.length;

var isadd = tab.getattribute("isadd");

var isdel = tab.getattribute("isdel");

if(isdel == true)

{

cellen = cellen -1;

}

var newrow = tabbody.insertrow(rowlen-1);

newrow.id = "lrcnewrow";

// for(var i = 0;i< cellen;i++)

// {

// var newcel = newrow.insertcell();< br> // var str="<input type=textname=\"newt\"class=\"lrc_txt_normal\"onfocus=\"this.classname=lrc_txt_edit;this.parentnode.parentnode.bgcolor=#c1d2ee;\" onblur=\"this.classname=lrc_txt_normal;this.parentnode.parentnode.bgcolor=#ffffff;\"/>";

// newcel.innerhtml =str;

// }

for(var i = 0;i<cellen;i++)

{

var newcel = newrow.insertcell();

if(tabbody.rows[1].cells[i].childnodes[0].nodetype != 3)

{

if(tabbody.rows[1].cells[i].firstchild.id.indexof(lrcdrl_) != -1)

{

var innert = tabbody.rows[1].cells[i].innerhtml;

newcel.innerhtml = innert;

newcel.firstchild.disabled = false;

}

else

{< br> var str="<input type=textname=\"newt\"class=\"lrc_txt_normal\"onfocus=\"this.classname=lrc_txt_edit;this.parentnode.parentnode.bgcolor=#c1d2ee;\" onblur=\"this.classname=lrc_txt_normal;this.parentnode.parentnode.bgcolor=#ffffff;\"/>";

newcel.innerhtml =str;

}

}

else

{< br> var str="<input type=textname=\"newt\"class=\"lrc_txt_normal\"onfocus=\"this.classname=lrc_txt_edit;this.parentnode.parentnode.bgcolor=#c1d2ee;\" onblur=\"this.classname=lrc_txt_normal;this.parentnode.parentnode.bgcolor=#ffffff;\"/>";

newcel.innerhtml =str;

}

}

}

function removerow(tab)

{

var tabbody = tab.tbodies[0];

var onerow;

var rowlen = tab.rows.length;

if(tabbody.rows[rowlen-2].id == "lrcnewrow")

{

tabbody.deleterow(rowlen-2);

}

}

样式表文件:

.lrc_txt_edit

{

border-width:medium;

border-style:groove;

font-weight:bolder;

background-color:yellow;

width:95;

}

.lrc_txt_normal

{

border-style:groove;

border-width:thin;

font-weight:normal;

background-color:#f5f7fb;

width:95;

}

.lrc_txt_hid

{

border-style:none;

width:95;

background:url(images/txt_back.gif);

}

.lrc_txt_show

{

border-style:groove;

width:95;

background-color:#ffffff;

}

作者blog:http://blog.csdn.net/masterlrc/

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 全编辑WebGrid控件LrcGrid(4)—— 脚本库和样式表-ASP教程,数据库相关
分享到: 更多 (0)

相关推荐

  • 暂无文章