使用JavaScript代碼實(shí)現(xiàn)各種數(shù)據(jù)控件的反選功能 不要只做拖控件的菜鳥(niǎo)
更新時(shí)間:2011年12月22日 23:33:37 作者:
在我們做許多項(xiàng)目的時(shí)候,會(huì)用到反選這個(gè)功能,但是我一般使用C#代碼創(chuàng)建數(shù)組遍歷實(shí)現(xiàn)功能,今天我想換一種語(yǔ)言實(shí)現(xiàn)一下,于是我就用JavaScript研究了一下怎么實(shí)現(xiàn)這個(gè)功能
原來(lái)也很簡(jiǎn)單和用C#語(yǔ)言來(lái)實(shí)現(xiàn)這個(gè)差不多吧,只不過(guò)使喚了兩種語(yǔ)言哦,而且這樣寫(xiě)代碼對(duì)系統(tǒng)的性能也比較好。如圖所示:為反選所實(shí)現(xiàn)的功能。
<asp:TemplateField HeaderText="<input type='checkbox' id='cbAll' name='cbAll' onclick='selAll(this.checked);' />反選">
<ItemTemplate>
<input type="checkbox" id="cbName" name="cbName" value='<%# DataBinder.Eval(Container.DataItem, "ProductID")%>' />
</ItemTemplate>
</asp:TemplateField>
然后寫(xiě)JavaScript代碼來(lái)實(shí)現(xiàn)這個(gè)功能:
<script type="text/javascript">
function selAll(boolValue)
{
var obj=document.getElementsByName("cbName");
var cbNameLen=obj.length;
if(cbNameLen>1)
{
for(var i=0;i<cbNameLen;i++)
{
if(obj[i].checked)
{
obj[i].checked=false;
}
else
{
obj[i].checked=true;
}
}
}
else
{
obj.checked = boolValue;
}
}
function clickBtnCheck()
{
var obj=document.getElementsByName("cbName");
var cbNameLen=obj.length;
var Flag=false;
if(cbNameLen>0)
{
for(var i=0;i<cbNameLen;i++)
{
if(obj[i].checked)
{
Flag=true;
break;
}
}
if(Flag)
{
return true;
}
else
{
alert("請(qǐng)先選擇要操作的記錄! ");
return false;
}
}
else
{
alert("現(xiàn)在沒(méi)有記錄,不能操作!");
return false;
}
}
</script>
復(fù)制代碼 代碼如下:
<asp:TemplateField HeaderText="<input type='checkbox' id='cbAll' name='cbAll' onclick='selAll(this.checked);' />反選">
<ItemTemplate>
<input type="checkbox" id="cbName" name="cbName" value='<%# DataBinder.Eval(Container.DataItem, "ProductID")%>' />
</ItemTemplate>
</asp:TemplateField>
然后寫(xiě)JavaScript代碼來(lái)實(shí)現(xiàn)這個(gè)功能:
復(fù)制代碼 代碼如下:
<script type="text/javascript">
function selAll(boolValue)
{
var obj=document.getElementsByName("cbName");
var cbNameLen=obj.length;
if(cbNameLen>1)
{
for(var i=0;i<cbNameLen;i++)
{
if(obj[i].checked)
{
obj[i].checked=false;
}
else
{
obj[i].checked=true;
}
}
}
else
{
obj.checked = boolValue;
}
}
function clickBtnCheck()
{
var obj=document.getElementsByName("cbName");
var cbNameLen=obj.length;
var Flag=false;
if(cbNameLen>0)
{
for(var i=0;i<cbNameLen;i++)
{
if(obj[i].checked)
{
Flag=true;
break;
}
}
if(Flag)
{
return true;
}
else
{
alert("請(qǐng)先選擇要操作的記錄! ");
return false;
}
}
else
{
alert("現(xiàn)在沒(méi)有記錄,不能操作!");
return false;
}
}
</script>
相關(guān)文章
dataGrid 多維表頭、表頭跨行跨列設(shè)計(jì)及綁定數(shù)據(jù)
dataGrid 其實(shí)就是一個(gè)html table,本文將介紹dataGrid 多維表頭,表頭跨行跨列設(shè)計(jì)方法需要了解的朋友可以參考下2012-12-12WPF實(shí)現(xiàn)轉(zhuǎn)圈進(jìn)度條效果
這篇文章主要為大家詳細(xì)介紹了WPF實(shí)現(xiàn)轉(zhuǎn)圈進(jìn)度條效果,如何設(shè)計(jì)自定義的繞圈進(jìn)度條,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05.net調(diào)用JScript腳本及JS url加密解密
.net調(diào)用JScript腳本及JS url加密解密,需要的朋友可以參考一下2013-03-03Asp.Net防止刷新重復(fù)提交數(shù)據(jù)的辦法
最近在用Asp.Net編寫(xiě)點(diǎn)東西時(shí)遇到個(gè)問(wèn)題:即用戶(hù)在提交表單后按刷新就會(huì)重復(fù)提交數(shù)據(jù),即所謂的“刷新重復(fù)提交”的問(wèn)題。2013-03-03asp.net+js實(shí)現(xiàn)的ajax sugguest搜索提示效果
阿會(huì)楠根據(jù)網(wǎng)上一份原作者不詳?shù)拇a進(jìn)行了修改,以適合自己的項(xiàng)目并增加了多個(gè)功能。此次放出的代碼為基本實(shí)現(xiàn)代碼,也是最接近原來(lái)的代碼,略去其他功能。版權(quán)歸原作者所有。2009-04-04C#圖片截取壓縮(百分比壓縮/大小壓縮)實(shí)現(xiàn)代碼
為了娛樂(lè)寫(xiě)了個(gè)截取圖片和壓縮圖片你的小工具:按照百分比壓縮/制定大小壓縮等等,感興趣的朋友可以了解下啊,希望本文對(duì)你學(xué)些c#圖片知識(shí)有所幫助2013-01-01ASP.NET MVC獲取多級(jí)類(lèi)別組合下的產(chǎn)品
這篇文章介紹了ASP.NET MVC獲取多級(jí)類(lèi)別組合下產(chǎn)品的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-09-09