博客 (838)

<script language="javascript">
setTimeout(document.getElementById("btn").disabled='false',5000);
</script>
<INPUT id=btn onclick="this.disabled=true" type="button" value="Button">
3,716

javascript:return confirm('你确认要删除吗?')


if(confirm('你确认要删除吗?')) {

    // 确定

} else {

    // 取消

}

xoyozo 18 年前
4,167

类型选择器:
例:
p {color: black;}

后代选择器:
例:
hi a {text=decoration: none;}

ID选择器:
例:
#intro {font-weight: blod;}
  <p id="intro">Some Text</p>

类选择器:
例:
.datePosted {color: green;}
  <p class="datePosted">26/4/2007</p>

组合选择器:
例:
#mainContent h1{font-size: 1.8em;}
  <div id="mainContent"><h1>title...</h1>...<div>
例:
form {width: 30em;}
form#search {width: 40em;}

伪类选择器:
例:
a:link {color: blue;} /*设置所有未访问的超级链接颜色*/
例:
tr:hover {background-color: red;} /*改变鼠标掠过时的表格行背景色*/

通用选择器:
例:
* {
  padding: 0;
  margin: 0;
}

高级选择器:
略。

另:同时设置几个属性中间用","
body,tr {...}

6,399

<noscript>
    <iframe src="*.htm"></iframe>
</noscript>
原理是,当浏览器保存该网页时会试图保存“*.html”这个文件,而“*”为特殊字符不允许存在于文件名中,因此保存失败。
4,434
css之FILTER:progid:DXImageTransform.Microsoft.Gradient使用

FILTER:progid:DXImageTransform.Microsoft.Gradient使用
语法:

filter:progid:DXImageTransform.Microsoft.Gradient(enabled=bEnabled,startColorStr=iWidth,endColorStr=iWidth)
属性:
enabled:可选项。布尔值(Boolean)。设置或检索滤镜是否激活。  true | false
  true: 默认值。滤镜激活。
  false:滤镜被禁止。
 
startColorStr:可选项。字符串(String)。设置或检索色彩渐变的开始颜色和透明度。
   其格式为 #AARRGGBB 。 AA 、 RR 、 GG 、 BB 为十六进制正整数。取值范围为 00 - FF 。 RR 指定红色值, GG 指定绿色值, BB 指定蓝色值,参阅 #RRGGBB 颜色单位。 AA 指定透明度。 00 是完全透明。 FF 是完全不透明。超出取值范围的值将被恢复为默认值。
  取值范围为 #FF000000 - #FFFFFFFF 。默认值为 #FF0000FF 。不透明蓝色。 
EndColorStr:可选项。字符串(String)。设置或检索色彩渐变的结束颜色和透明度。参阅 startColorStr 属性。默认值为 #FF000000 。不透明黑色。 
特性:
Enabled:可读写。布尔值(Boolean)。参阅 enabled 属性。
GradientType:可读写。整数值(Integer)。设置或检索色彩渐变的方向。1 | 0
  1:默认值。水平渐变。
  0:垂直渐变。
StartColorStr:可读写。字符串(String)。参阅 startColorStr 属性。
StartColor:可读写。整数值(Integer)。设置或检索色彩渐变的开始颜色。 取值范围为 0 - 4294967295 。 0 为透明。 4294967295 为不透明白色。
EndColorStr:可读写。字符串(String)。设置或检索色彩渐变的结束颜色和透明度。参阅 startColorStr 属性。默认值为 #FF000000 。不透明黑色。 
EndColor:可读写。整数值(Integer)。设置或检索色彩渐变的结束颜色。 取值范围为 0 - 4294967295 。 0 为透明。 4294967295 为不透明白色。当在脚本中使用此特性时,也可以用十六进制格式: 0xAARRGGBB 。 
说明:
在对象的背景和内容之间显示定制的色彩层。
当此效果通过转变显示时,在渐变册色彩层之上的文本程序性的初始化为透明的,当色彩渐变实现后,文本颜色会以其定义的值更新。
示例:
#idDiv{position:absolute; left:140px; height:400; width:400;filter:progid:DXImageTransform.Microsoft.gradient(enabled='false',startColorstr=#550000FF, endColorstr=#55FFFF00) ;}

#idDiv{position:absolute; left:140px; height:400; width:400;filter:progid:DXImageTransform.Microsoft.gradient() ;}
具体使用
<table border=1 width=100%>
<tr>
<td STYLE="FILTER:progid:DXImageTransform.Microsoft.Gradient(gradientType=1,startColorStr='#ffffff',endColorStr='#ff0000')">&nbsp;</td>
</tr>
</table>
4,324

有时候,我们在调试 SQL Server 2005 的程序会出现:


Generating user instances in SQL Server is disabled. Use sp_configure 'user instances
enabled' to generate user instances

这个错误,这是因为默认使用了 user instance,可以通过两种途径解决:(推荐 途径一的方法b)

一、改环境配置

方法a:

1.  run=>cmd.exe

2.  输入 sqlcmd

3.  输入 sp_configure 'user instances enabled','1'

方法b:

使用 SQL Server Management Studio 工具,附加数据库,添加查询:

exec sp_configure 'user instances enabled',1
reconfigure

二、改连接字符串

把所有连接字符串中的 user instace=true; 去掉,包括 %systemroot%microstoft.net/[version]/framework/config/ 下的几个 Config 文件中的连接字符串

4,300

Sql Server 中一个非常强大的日期格式化函数

常用:

Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46
Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47
Select CONVERT(varchar(100), GETDATE(), 108): 10:57:49
Select CONVERT(varchar(100), GETDATE(), 12): 060516
Select CONVERT(varchar(100), GETDATE(), 23): 2006-05-16
所有:

Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06
Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16
Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06
Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06
Select CONVERT(varchar(100), GETDATE(), 5): 16-05-06
Select CONVERT(varchar(100), GETDATE(), 6): 16 05 06
Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 06
Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46
Select CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM
Select CONVERT(varchar(100), GETDATE(), 10): 05-16-06
Select CONVERT(varchar(100), GETDATE(), 11): 06/05/16
Select CONVERT(varchar(100), GETDATE(), 12): 060516
Select CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937
Select CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967
Select CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47
Select CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157
Select CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM
Select CONVERT(varchar(100), GETDATE(), 23): 2006-05-16
Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47
Select CONVERT(varchar(100), GETDATE(), 25): 2006-05-16 10:57:47.250
Select CONVERT(varchar(100), GETDATE(), 100): 05 16 2006 10:57AM
Select CONVERT(varchar(100), GETDATE(), 101): 05/16/2006
Select CONVERT(varchar(100), GETDATE(), 102): 2006.05.16
Select CONVERT(varchar(100), GETDATE(), 103): 16/05/2006
Select CONVERT(varchar(100), GETDATE(), 104): 16.05.2006
Select CONVERT(varchar(100), GETDATE(), 105): 16-05-2006
Select CONVERT(varchar(100), GETDATE(), 106): 16 05 2006
Select CONVERT(varchar(100), GETDATE(), 107): 05 16, 2006
Select CONVERT(varchar(100), GETDATE(), 108): 10:57:49
Select CONVERT(varchar(100), GETDATE(), 109): 05 16 2006 10:57:49:437AM
Select CONVERT(varchar(100), GETDATE(), 110): 05-16-2006
Select CONVERT(varchar(100), GETDATE(), 111): 2006/05/16
Select CONVERT(varchar(100), GETDATE(), 112): 20060516
Select CONVERT(varchar(100), GETDATE(), 113): 16 05 2006 10:57:49:513
Select CONVERT(varchar(100), GETDATE(), 114): 10:57:49:547
Select CONVERT(varchar(100), GETDATE(), 120): 2006-05-16 10:57:49
Select CONVERT(varchar(100), GETDATE(), 121): 2006-05-16 10:57:49.700
Select CONVERT(varchar(100), GETDATE(), 126): 2006-05-16T10:57:49.827
Select CONVERT(varchar(100), GETDATE(), 130): 18 ???? ?????? 1427 10:57:49:907AM
Select CONVERT(varchar(100), GETDATE(), 131): 18/04/1427 10:57:49:920AM
4,705

Group by 是SQL Server 中常用的一种语法,语法如下:

[ GROUP BY [ ALL ] group_by_expression [ ,...n ]
    [ WITH { CUBE | ROLLUP } ]
] 
1、最常用的就是这种语法,如下:
Select CategoryID, AVG(UnitPrice), COUNT(UnitPrice) 
FROM dbo.Products Where UnitPrice > 30
GROUP BY CategoryID
ORDER BY CategoryID DESC
这个语句查询出,所有产品分类的产品平均单价,单价计数。并且单价在 30 以上的记录。
2、再看看这种语法,如下:
Select CategoryID, AVG(DISTINCT UnitPrice), COUNT(DISTINCT UnitPrice) 
FROM dbo.Products Where UnitPrice > 30
GROUP BY CategoryID
ORDER BY CategoryID DESC
使用 DISTINCT 的时候,将会去除重复的价格平均单价。
3、如果希望在分类统计之后,再使用条件过滤,下面的语句可以做为参数:
Select CategoryID, SUM(UnitPrice) AS SumPrice
FROM dbo.Products
GROUP BY CategoryID
HAVING SUM(UnitPrice) > 300
HAVING 与 Where 语句类似,Where 是在分类之前过滤,而 HAVING 是在分类之后过滤。
它和 Where 一样使用 AND、OR、NOT、LIKE 组合使用。
4、如果希望再在分类统计中,添加汇总行,可以使用以下语句:
Select CategoryID, SUM(UnitPrice), GROUPING(CategoryID) AS 'Grouping'
FROM dbo.Products
GROUP BY CategoryID WITH ROLLUP
Grouping 这一列用于标识出哪一行是汇总行。
它使用 ROLLUP 操作添加汇总行。
5、如果使用 WITH CUBE 将会产生一个多维分类数据集,如下:
Select CategoryID, SupplierID, SUM(UnitPrice) AS SumPrice
FROM dbo.Products
GROUP BY CategoryID, SupplierID WITH CUBE
它会产生一个交叉表,产生所有可能的组合汇总。
6、使用 ROLLUP CUBE 会产生一个 NULL 空值,可以使用以下语法解决,如下:
Select CASE WHEN (GROUPING(SupplierID) = 1) THEN '-1'
            ELSE SupplierID
       END AS SupplierID,
       SUM(UnitPrice) AS QtySum
FROM dbo.Products
GROUP BY SupplierID WITH CUBE
它首先检查当前行是否为汇总行,如果是就可以设置一个值,这里设置为 '-1' 。
4,653

例:每页 10 条记录,取第 2 页:

p=2;

n=10;

select top p*n * from [] where [id] not in (select top (p-1)*n [id] from [] order by ...) order by ...
xoyozo 18 年前
4,171

表A:分类ID,分类名
表B:产品ID,分类ID,产品名

要求取 所有产品以及分类名

select [产品名],(select [A.分类名] from [A] where [A.分类ID] = [B.分类ID]) as [分类名] from [B]
xoyozo 18 年前
3,879