使用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)文章
Asp.Net MVC3.0如何項(xiàng)目部署到Win7 64位系統(tǒng)
這篇文章主要介紹了Asp.Net MVC3.0如何項(xiàng)目部署到Win7 64位系統(tǒng)的全部過(guò)程,需要的朋友可以參考下2015-10-10
ASP.NET web.config中 數(shù)據(jù)庫(kù)連接字符串加密解密
本文主要介紹利用aspnet_regiis.exe工具對(duì)web.config中connectionStrings節(jié)點(diǎn)進(jìn)行加密和解密的過(guò)程,希望對(duì)大家有所幫助。2016-05-05
System.Web.Routing入門(mén)及進(jìn)階
System.Web.Routing已經(jīng)作為一個(gè)程序集包含在.net3.5sp1中發(fā)布了。雖然我們并沒(méi)有在3.5sp1中發(fā)現(xiàn)Asp.net Mvc的蹤跡,但是亦以感覺(jué)到它離我們不遠(yuǎn)了2011-12-12
ajax.net +jquery 無(wú)刷新三級(jí)聯(lián)動(dòng)的實(shí)例代碼
ajax.net +jquery 無(wú)刷新三級(jí)聯(lián)動(dòng)的實(shí)例代碼,需要的朋友可以參考一下2013-05-05
c#實(shí)現(xiàn)根據(jù)網(wǎng)絡(luò)IP顯示地理位置功能示例
通常都會(huì)有類(lèi)似 注冊(cè)IP和最后登錄IP這兩個(gè)的字段來(lái)存儲(chǔ)用戶(hù)注冊(cè)時(shí)候的IP地址和最后登錄的IP的地址,現(xiàn)在我們就簡(jiǎn)單的實(shí)現(xiàn)一下如標(biāo)題所示的功能2013-06-06
asp.net實(shí)現(xiàn)獲取客戶(hù)端詳細(xì)信息
這篇文章主要介紹了asp.net實(shí)現(xiàn)獲取客戶(hù)端詳細(xì)信息,包括客戶(hù)端瀏覽器及主機(jī)信息,感興趣的小伙伴們可以參考一下2015-12-12
asp.net SQL存儲(chǔ)過(guò)程分頁(yè)
上周花一下午時(shí)間寫(xiě)了個(gè)分頁(yè).給大家分享下,如果寫(xiě)得不好請(qǐng)大家指出一起討論哈,小弟第一次寫(xiě)文章哈..謝謝.2009-05-05

