网页开发中的一些记录

1,ul标签取消圆点 

<ul style="list-style-type:none;">
    
<li>
        test
    
</li>
    
<li>
        good
    
</li>
</ul>

 list-style-type的其他属性和效果看这里:http://www.dreamdu.com/css/property_list_style_type/

 

2、VS2008中的JQuery智能感应

首先打上VS2008的SP1补丁,之后下载VS90SP1-KB958502-x86.exe安装.然后下载jquery-1.3.2.js和jquery-1.3.2-vsdoc.js文件放在同一目录下。使用jquery的时候引用"jquery-1.3.2.js"就会智能感应。

注意:部署的时候,请使用Min版本(jquery-1.3.2.min.js).另外min版本无法智能感应。

 附件已经包含以下文件:jquery-1.3.2.js,jquery-1.3.2.min.js,jquery-1.3.2-vsdoc.js
下载:https://files.cnblogs.com/conan304/jquery-1.3.2.zip

 

3、非常好用的日历控件:My97
特点:免费、功能强大、丰富的文档、更新速度快。
地址:http://www.my97.net/

记录:日历默认每周以星期天开始,如果想设置每周星期一开始,则打开My97DatePicker\WdatePicker.js,找到firstDayOfWeek属性,默认是0星期天,改为1则为周一开始。

 

4、几个常用正则
手机号码:


2016年12月17日 17:00:13 李云龙 V1版本
手机号码、固定电话正则表达式规则如下(重点关注云南省区号情况):
1、固定电话,不能有-,即为087161234567的形式,固定电话,除掉区号,第一位只能为2-8,不能为0、1、9。
2、固定电话,区号三位数的,号码是8位,共11位,注意026未分配。如01061234567
3、固定电话,区号是四位数的,号码可以是7位或者8位。但昆明只能是8位,6开头如087161234567,省内其他地方087X的为7位,如文山为08762134567。
4,手机号码为11为,13和18为全段,14段分配了145和147,15段154未分配,17段(虚拟运营商)分配了170、171、173、175-8。
5,云南省区号:0691 西双版纳,0692 德宏,0870 昭通,0871 昆明,0872 大理,0873 红河,0874 曲靖
0875 保山,0876 文山,0877 玉溪,0878 楚雄,0879 普洱,0883 临沧,0886 怒江,0887 迪庆,0888 丽江
6,固话正则:^010[2-8]\d{7}|02[0-57-9][2-8]\d{7}|0[3-79][1-9]\d[2-8]\d{6,7}|08[1-689]\d[2-8]\d{6,7}|08716\d{7}|087[02-9][2-8]\d{6}$
7,手机正则:^1(3\d{2}|4[57]\d|5[0-35-9]\d|7[0135-8]\d|8\d{2})\d{7}$
8.固话和手机正则:^010[2-8]\d{7}|02[0-57-9][2-8]\d{7}|0[3-79][1-9]\d[2-8]\d{6,7}|08[1-689]\d[2-8]\d{6,7}|08716\d{7}|087[02-9][2-8]\d{6}|13\d{9}|14[57]\d{8}|15[0-35-9]\d{8}|17[0135-8]\d{8}|18\d{9}$

 强大的电子邮件正则表达式: /^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i

具体解释看这里:http://topic.csdn.net/t/20040721/00/3194150.html 

 

5、SQL Server密码的特殊字符在web.config中的处理
需要转义,转义表如下:

":&quot;
':
&apos;
&: 
&amp;
<&lt;
>&gt;
\r: 
\n: 

 

6、JQuery操作下拉框(dropdownlist) 

代码
    <select name="ddl" id="ddl">
        
<option value="1">测试1</option>
        
<option value="2">测试2</option> 
    
</select> 
    
    
<input type="button" name="button1" value="测试" id="button1" />   
 
代码
    <script language="javascript" type="text/javascript">
        $(
function() {
            $(
"#button1").click(function() {
                
var ddlValue = $("#ddl").val(); //选中的值
                alert("选中的是值是'" + ddlValue + "'");

                
var ddlText = $("select[name='ddl'] option:selected").text(); //选中的文本 option:selected表示被选中
                alert("选中的文本是'" + ddlText + "'");
            });
        });
   
    
</script>

 

7,asp.net实现返回上一页,代码如下:

<input type="button" onclick="JavaScript:window.history.go(-1);" value="返回上一页">

 

Response.Write("<script>alert('提示信息');history.back()</script>");

 

8、Gridview中的HyperLink绑定多参数,代码如下:

 <asp:HyperLinkField DataNavigateUrlFields="id,type" DataNavigateUrlFormatString="Detail.aspx?uid={0}&type={1}" DataTextField="name" />

 

 9、"视图状态无效"的解决方法
在提交的页面顶部加上

<%@ Page EnableViewStateMac="false" %>

 

 10、SQL Server中的tinyint,smallint,int,bigint和C#中的数据对应

代码
tinyint-->byte 0到255 无符号8位整数
smallint--->short -32,768 到 32,767 有符号16位整数
int-->int -2,147,483,648 到 2,147,483,647 有符号32位整数
bigint-->long -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 有符号64位整数

 

  11、SQL Server中的MD5和SHA1的获取

在 SQL Server 2005 中,微软提供了一个函数 hashbytes() 可以用来计算一个字符串的 MD5 和 SHA1 值,以下语句分别获得字符串 “12345” 的 MD5 和 SHA1:
SELECT hashbytes('MD5', '12345') ;
SELECT hashbytes('SHA1', '12345') ;
hashbytes() 函数的返回结果是 varbinary 型,也就是以 0x 开头 16 进制形式的二进制数据,不过通常情况下,我们需要的都是字符串型的数据,很多人首先想到的可能就是用 CAST 或 Convert 函数将varbinary 转换为 varchar,但这样转换后的结果会是乱码,正确转换 varbinary 可变长度二进制型数据到 16 进制字符串应该使用系统内置函数 sys.fn_VarBinToHexStr(),如下所示:

代码
SELECT sys.fn_VarBinToHexStr(hashbytes('MD5''123456'))
--0xe10adc3949ba59abbe56e057f20f883e
SELECT sys.fn_VarBinToHexStr(hashbytes('SHA1''123456'))
--0x7c4a8d09ca3762af61e59520943dc26494f8941b

SELECT right(sys.fn_VarBinToHexStr(hashbytes('MD5''123456')),32)
--e10adc3949ba59abbe56e057f20f883e
SELECT right(sys.fn_VarBinToHexStr(hashbytes('SHA1''123456')),40)
--7c4a8d09ca3762af61e59520943dc26494f8941b
代码
/// <summary>
/// 得到32位16进制的MD5值
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
private string getMd5Hash(string input)
{
    
// Create a new instance of the MD5CryptoServiceProvider object.
    MD5 md5Hasher = MD5.Create();

    
// Convert the input string to a byte array and compute the hash.
    byte[] data = md5Hasher.ComputeHash(Encoding.Default.GetBytes(input));

    
// Create a new Stringbuilder to collect the bytes
    
// and create a string.
    StringBuilder sBuilder = new StringBuilder();

    
// Loop through each byte of the hashed data 
    
// and format each one as a hexadecimal string.
    for (int i = 0; i < data.Length; i++)
    {
        sBuilder.Append(data[i].ToString(
"x2"));
    }

    
// Return the hexadecimal string.
    return sBuilder.ToString();
}

/// <summary>
/// 得到40位16进制的SHA1值
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
private string getSha1Hash(string input)
{

    SHA1 sha 
= new SHA1CryptoServiceProvider();

    
byte[] data = sha.ComputeHash(Encoding.Default.GetBytes(input));
   
    StringBuilder sBuilder 
= new StringBuilder();
   
    
for (int i = 0; i < data.Length; i++)
    {
        sBuilder.Append(data[i].ToString(
"x2"));
    }

    
// Return the hexadecimal string.
    return sBuilder.ToString();
}

 

 12,System.Web.UI.Page.RegisterClientScriptBlock(string, string) 已过时的解决办法

警告“System.Web.UI.Page.RegisterClientScriptBlock(string, string)”已过时:“The recommended alternative is ClientScript.RegisterClientScriptBlock(Type type, string key, string script). http://go.microsoft.com/fwlink/?linkid=14202”


如果出现类似的警告,则应该这样处理:
如你的警告代码为:

 

代码
RegisterClientScriptBlock("""<script language=javascript>window.open('../Issue/IssueAllComment.aspx')< /script>");//目的是要新弹出页面。
//可以改为:
ClientScript.RegisterStartupScript(this.GetType(), """<script>window.open('../Issue/IssueAllComment.aspx');</script>");

 

 

13,GridView显示HTML
在需要绑定的列,加入参数HtmlEncode="false"

 
14,SQL SERVER 产生0-2048的表序列

 

select number
from master..spt_values 
where type='p'

 

 

 

 待续。。。。

 

 

14,Gridview不显示边框和标题

<asp:GridView ID="gvLeavWord" runat="server" ShowHeader="false" BorderStyle="None" CellPadding="0" GridLines ="None">

 

 15,SQL Server区分大小写 

 

--两种方法
--
1,修改表的字段为区分大小写
ALTER TABLE tb ALTER COLUMN colname nvarchar(100) COLLATE Chinese_PRC_CS_AS
 
--2,查询的时候区分大小写
SELECT * FROM tablename WHERE column1 COLLATE Chinese_PRC_CS_AS= 'Xxxx'
--或者
SELECT * FROM tablename WHERE column1='Xxxx' COLLATE Chinese_PRC_CS_AS 
 
--注意:CI 指定不区分大小写,CS 指定区分大小写。AI 指定不区分重音,AS指定区分重音。 

 

 

 

 15,SQL Server 2008 删除日志

代码
--SQL2008 的收缩日志 
/*

由于SQL2008对文件和日志管理进行了优化,所以以下语句在SQL2005中可以运行但在SQL2008中已经被取消:
*/
--(SQL2005)
Backup Log DNName with no_log
go
dump transaction DNName with no_log
go
USE DNName 
DBCC SHRINKFILE (2)
Go
--------------------------------------------------------------
/*
(SQL2008):
在SQL2008中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完全模式。
*/
USE [master]
    
GO
    
ALTER DATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT
    
GO
    
ALTER DATABASE DNName SET RECOVERY SIMPLE   --简单模式
    GO
    
USE DNName 
    
GO
    
DBCC SHRINKFILE (N'DNName_Log'11, TRUNCATEONLY)
    
GO
    
USE [master]
    
GO

    
ALTER DATABASE DNName SET RECOVERY FULL WITH NO_WAIT

    
GO

    
ALTER DATABASE DNName SET RECOVERY FULL  --还原为完全模式

    
GO
/*
优点:此清除日志所运行消耗的时间短,90GB的日志在分钟左右即可清除完毕,做完之后做个完全备份在分钟内
即可完成。
缺点: 不过此动作最好不要经常使用,因为它的运行会带来系统碎片。普通状态下LOG和DIFF的备份即可截断日志。
此语句使用的恰当环境:当系统的日志文件异常增大或者备份LOG时间太长可能影响生产的情况下使用。
*/

 

 16,C#显示中文格式的星期几

DateTime.Now.ToString("dddd",new System.Globalization.CultureInfo("zh-cn"));
//星期日

 
17,关于“因为数据库正在使用,所以无法获得对数据库的独占访问权”的最终解决方案

ALTER DATABASE [datebase] SET OFFLINE WITH ROLLBACK IMMEDIATE

 

 

 

posted @ 2009-12-23 21:30  Conan304  阅读(554)  评论(0编辑  收藏  举报