我的全选脚本如下:
<script language=javascript type="text/javascript">
    //多选CHECKBOX相关函数(全选)
    function selectAll()
    {
    for (var i=0;i<Form1.elements.length;i++)
    {
    var e = Form1.elements[i];
    if ((e.name != 'allbox') && (e.type=='checkbox'))
    {
    e.checked = Form1.allbox.checked;
    GetSelected(e); 
    }
    }
    }
    
    function GetSelected(oChk)
    {
    if(oChk.checked)
    {
        Form1.tbSelectID.value += "$"+oChk.value;
    }
    else
    {
        Form1.tbSelectID.value = Form1.tbSelectID.value.replace("$"+oChk.value,"");
    }
    }
    
    function CheckIsSelect()
    {
    if(Form1.tbSelectID.value == '')
    {
    window.alert('请先选择项!');
    return false;
    }
    if(!window.confirm("确定要进行操作吗?"))
    {
    return false;
    }
    return true;
    }
</script>

解决方案 »

  1.   

    利用母板的From
    否则你的Script就没用了偶以前也遇到过同样的问题
      

  2.   

    1。
    有 form 在模板页中2。
    如何正确的引用?for (var i=0;i<Form1.elements.length;i++)》》》for (var i=0;i< <% =Page.Master.Page.Form.ClientID %>.elements.length;i++)3。
    事实上当前版本(asp.net 2.0)模板页(master)中的 form 客户端 id 和 name(此属性 xhtml已不再支持)固定呈现为 aspnetForm故,也可以硬编码》》》for (var i=0;i< aspnetForm.elements.length;i++)
      

  3.   

    你Script里的很多写法不建议这样写
    Form1.elements
    可以改成
    document.form["..."].
    否则很多浏览器中会看不了你的内容你在script中用模板的form
      

  4.   

    还可以这样用docment而不用form去访问你的对象
    貌似也是可以的
      

  5.   

    建议的访问方式使用 DOMvar form = document.getElementById('<% =Page.Master.Page.Form.ClientID %>');
    // ...
    // ...