最近学习ASP2.0相关的几个小问题(非创新性文章)

很久没有写技术日志了,主要是最近研究的不多。不过刚刚从事asp 2.0网站开发。在过程中遇到了一些简单的问题。特把这些内容摘要记录一下。

(1)ASP2.0调用客户端的脚本:在PageLoad事件处理中,添加如下代码:
//在页面全部载入后,执行该脚本~
if (!this.IsClientScriptBlockRegistered(key))
{
    
this.RegisterStartupScript(key, string.Format("<script language=\"javascript\">SwitchPanel({0});</script>",sel));
}
使用RegisterStartupScript的方法,会在页面完全加载后调用script。如果是RegisterClientScriptBlock则会在页面加载前调用,因此在这里script函数要用到页面内容,因此必须在页面加载完成后调用。



(2)一些基本的概念,都是很基本的javascript的内容。

下面是打印一个div的内容,方法是讲它的html内容输出到一个新的窗口,然后打印。
   //打印页面内容
    function printPage(div_id)
    {
        var newWin = window.open('printPage','','');
        var titleHTML = document.getElementById( div_id ).innerHTML;       
        newWin.document.write(titleHTML);
        newWin.document.location.reload();
        newWin.print();
        newWin.close();
    }

在javascrip中,语法和c#非常类似。不同的地方是,函数不需要定义时不需要声明返回值和参数的类型,字符串定义也是单引号和双引号都可以,采用那种主要依据能把它能把字符串中的引号区分开为准。还有变量的定义等地方都可以看出java脚本里面是比较随意和自由的。这个特点某种程度上有些类似office软件中的vba。

可以把一个GridView放到一个div节中,然后实现仅仅打印GridView,而不包含页面其他内容。



(3)使GridView的BoundField显示日期,而不是默认的DateTime类型(yyyy-MM-dd HH:mm:ss)。
       string[] fields=//列名
       
//为GridView添加列
        for (int i = 0; i < fields.Length; i++)
        
{
            BoundField bf 
= new BoundField();
            obj 
= this.GetLocalResourceObject(fields[i]);
            bf.HeaderText 
= (obj == null? (fields[i] + "??") : obj.ToString();
            bf.DataField 
= fields[i];            //日期型的列不显示时分秒
            if(fields[i].EndsWith("Date"))
            
{
                bf.HtmlEncode
=false//必须!
                bf.DataFormatString="{0:yyyy-MM-dd}";
            }

            
this.GridView1.Columns.Add(bf);
        }

原文地址:https://www.cnblogs.com/hoodlum1980/p/889608.html