ASP教程之全编纂WebGrid控件LrcGrid(4)―― 剧本...
帮助用户快速实现各种应用服务,ASP商有整合各方面资源的能力,可在短期内为用户提供所需的解决方案。例如,典型的ERP安装,如果要在客户端安装的话需要半年到二年的时间,但是美国的一些ASP商如USI和CORIO能在90—120天内提供ERP应用方案。web|剧本|控件|款式表全编纂WebGrid控件LrcGrid(4)――剧本库和款式表剧本库:包括了控件客户端操纵的函数.包含:
将表格行切换到编纂形式的函数:chgEditRow(rowIndex,tab)()
将表格列切换到编纂形式的函数:chgEdit(colIndex,tab)
在客户端机关更新数据库的sql语句:BuildSql(tabName)
增加新纪录的函数:AddRow(tab)
移除新增加行的函数:RemoveRow(tab)
全体js代码:
functionchgEditRow(rowIndex,tab)
{
vartabBody=tab.tBodies;
varisE=0;
//alert(rowIndex);
//alert(tabBody.rows.cells.length);
for(vari=0;i<tabBody.rows.cells.length;i++)
{
//alert(tabBody.rows.cells.childNodes.id);
if(tabBody.rows.cells.hasChildNodes())
{
if(tabBody.rows.cells.childNodes.nodeType!=3)
{
if(tabBody.rows.cells.childNodes.id.indexOf(LrcTb_)!=-1)
{
if(!tabBody.rows.cells.childNodes.disabled)
{
tabBody.rows.cells.childNodes.disabled=true;
tabBody.rows.cells.childNodes.className="lrc_txt_hid";
}
else
{
tabBody.rows.cells.childNodes.disabled=false;
tabBody.rows.cells.childNodes.className="lrc_txt_show";
}
}
elseif(tabBody.rows.cells.childNodes.id.indexOf(LrcDrl_)!=-1)
{
if(!tabBody.rows.cells.childNodes.disabled)
{
tabBody.rows.cells.childNodes.disabled=true;
}
else
{
tabBody.rows.cells.childNodes.disabled=false;
}
}
}
}
}
}
functionchgEdit(colIndex,tab)
{
vartabBody=tab.tBodies;
varoneRow;
if(tabBody.rows.cells.childNodes.disabled)
{
for(vari=1;i<tabBody.rows.length-1;i++)
{
oneRow=tabBody.rows;
if(oneRow.cells.childNodes.id.indexOf(LrcTb_)!=-1)
{
oneRow.cells.childNodes.disabled=false;
oneRow.cells.childNodes.className="lrc_txt_show";
}
elseif(oneRow.cells.childNodes.id.indexOf(LrcDrl_)!=-1)
{
oneRow.cells.childNodes.disabled=false;
}
}
}
else
{
for(vari=1;i<tabBody.rows.length-1;i++)
{
oneRow=tabBody.rows;
if(oneRow.cells.childNodes.id.indexOf(LrcTb_)!=-1)
{
oneRow.cells.childNodes.disabled=true;
oneRow.cells.childNodes.className="lrc_txt_hid";
}
elseif(oneRow.cells.childNodes.id.indexOf(LrcDrl_)!=-1)
{
oneRow.cells.childNodes.disabled=true;
}
}
}
}
functionBuildSql(tabName)
{
varUpdSql=;
vartabBody=tabName.tBodies;
varoneRow;
varlen=tabBody.rows.length;
varcelLen=tabName.rows.cells.length;
varisadd=tabName.getAttribute("isadd");
varisdel=tabName.getAttribute("isdel");
if(isdel==True)
{
celLen=celLen-1;
}
varhidIndex=0;
if(isadd==True)
{
hidIndex=2;
}
vartabN=tabBody.rows.cells.childNodes.value;
varcolN=tabBody.rows.cells.childNodes.value;
varcolNA=colN.split(",");
varpriK=tabBody.rows.cells.childNodes.value;
varpriKA=priK.split(",");
vareditCol=tabBody.rows.cells.childNodes.value;
vareditColA;
if(editCol==LrcAllEdit)
{
varlen=colNA.length-priKA.length;
editColA=newArray(len);
varindexE=0;
for(vari=0;i<colNA.length;i++)
{
varisPri=0;
for(varj=0;j<priKA.length;j++)
{
if(priKA==i)
{
isPri=1;
}
}
if(isPri==0)
{
editColA=i;
indexE++;
}
}
}
else
{
editColA=editCol.split(",");
}
varstrUpd="UPDATE"+tabN+"SET";
varstrIns="INSERT"+tabN+"("+colN+")VALUES(";
for(vari=1;i<tabBody.rows.length-1</p>ActiveServerPage技术为应用开发商提供了基于脚本的直观、快速、高效的应用开发手段,极大地提高了开发的效果。在讨论ASP的安全性问题之前,让我们来看看ASP是怎么工作的。 我想问如何掌握学习节奏(先学什么再学什么)最好详细点? 如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。 Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点) 我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。 代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。 多看多学多思。多看一些关于ASP的书籍,一方面可以扩展知识面一方面可以鉴借别人是如何掌握、运用ASP的;多学善于关注别人,向同学老师多多学习,不论知识的大小;多思则是要将学到的知识灵活运用。 接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。 用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
页:
[1]