關鍵的 js 語法如下:
function chkall(input1,input2)
{
var objForm = document.forms[input1];
var objLen = objForm.length;
for (var iCount = 0; iCount < objLen; iCount++)
{
if (input2 == true)
{
if (objForm.elements[iCount].type == "checkbox")
{
objForm.elements[iCount].checked = true;
}
}
else
{
if (objForm.elements[iCount].type == "checkbox")
{
objForm.elements[iCount].checked = false;
}
}
}
}
這方法的優點,是會將 form 名稱當參數傳入。在ASP.Net 2.0可以發現,如果你有使用 MasterPage時,預設的 form 名稱會變成 aspnetForm。 缺點是,這是會影響目前畫面上的所有 checkbox,如果你的畫面上出現的都是你想要變更的 checkbox,那就無妨,否則還需要作一些加工才能符合需求。
詳細程式碼:[Here]
在這個範例中,分別用了2個 GridView,其中一個採用 預設的 checkbox ServerControl ,另一個則是 Html checkbox,當畫面上有個觸發 PostBack 的按鈕執行後,只剩下 ServerControl 依然能夠維持目前所勾選的狀態。
沒有留言:
張貼留言