编程小知识锦集

东西比较杂,无论在写程序还是在平时使用电脑,偶尔会遇到一些细微的问题需要我们花费时间去找答案,在这里我收集一下,希望能给大家带来些许的帮助(持续收集中)

1.在html中如何写一个下载文件的链接

<a href="TestFile.rar">下载文件</a>

 将需要下载的文件压缩成.zip/.rar或者浏览器打不开的其他格式,这样点链接的时候即可实现文件下载。

2.在windows的cmd命令符中运行命令时如何中止

  比如我们在运行Ping 192.168.1.1 -t 这个命令时,如果我们不中止,它将永远循环执行下去,我们又不想关掉命令窗口,只想停止当前的命令,

  可以按 Ctrl+C 强行终止正在进行的当前进程,这样我们就能执行新的命令了。

3.windows运行关机命令

  Ctrl+R,在运行窗口执行shutdown -s -t 0 命令,系统关机,最后的0是等待的秒数。

  也可以在等待关机期间,执行 shutdown -a 命令取消关机。

4.windows运行记事本命令

  Ctrl+R,在运行窗口执行 notepad 命令,系统会打开一个新的记事本。

5.WinForm中Tab键的顺序

  WinForm程序中,想按Tab键光标按顺序走,可以设置控件的TabIndex属性,从0开始,依次切换。 

6.运行中快速查看电脑的硬件信息

   Ctrl+R,执行 dxdiag 命令,即可看到计算机的基本硬件信息了。

7.如何开机时不用输入密码,锁定时保留密码

  Ctrl+R打开运行窗口,执行 control userpasswords2 命令,将要使用本机,必须使用用户名和密码一项前的勾取消即可。

8.在Word中如何竖着选中一列文字

  按着Alt键同时鼠标选中需要的文字,发现可以竖着选中文本,这方法在数据库中也能用,但在网页上不行 

9.如何格式化整理HTML代码和C#代码

  在HTML源码中,按Ctrl+K+D格式化整理 ;

  在C#代码中,Ctrl+A全选,按Ctrl+K+F格式化整理。

10.HTML中的input如何调用C#后台方法

  input中runat="server",onclick调用的是前台的方法,onserverclick调用的是后台的方法。

  <input type="button" id="Button1" runat="server" value="调用后台" onserverclick="Button1_Click" />  //html

  protected void Button1_Click(object sender, EventArgs e)  //C#

11.C#如何从后台获取html控件的值

  <textarea id="textarea1" name="textContent" rows="5",cols="10" runat="server"></textarea>

  给控件加runat="server",即可在后台调用this.textarea1.InnerText; 

12.如何在不关闭已打开记事本的情况下刷新其内容

  例如,有一个过程,写入文件。 当正在运行的进程,我在记事本中打开该文件。 写入该文件的过程。

  除关闭并重新打开文件,是我“刷新”的数据显示,记事本有什么办法呢?

  使用文件>打开或CRTL + O重新打开该文件。 这样,你就没有记事本打开一个新的实例。 除此之外,只能使用其他软件,例如记事本++

13.HTML:打开的静态页出现乱码

  如果静态页打开后出现乱码的话,有可能是编码格式不对,在<head>标记内加上<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 即可。

14.WIN7系统下Internet网络的连接与断开

  如何断开网络:打开控制面板>网络和共享中心>点击本地连接>禁用  即可断开当前网络的连接

  如何打开网络:按照上面的步骤,网络已断开连接,这时点连接到网络,系统提示连接不可用。要点击更改适配器设置,右击本地连接>启用,系统会搜索当前可用网络并连接。

15.Win7设置服务的自动启动

  如果不想让某个服务开机自动启动的话,Ctrl+Alt+Del,打开服务,找到相应的项,属性设置为手动启动,在你想启动该服务的时候手动启动。

16.快速清除IE浏览器的缓存

  在使用IE浏览器调试程序的时候,经常要清除浏览器的缓存来查看程序执行的最新效果,快捷键 Ctrl+Shift+Delete 也许可以帮你实现,弹出对话框后按 D 清除缓存。

17.Sql Server 查询表中数据的行号,便于分页  

SELECT row_number()over(ORDER BY userid) AS ROWNUM,name FROM userinfo 

18.console.log()

  console.log()方法可以在控制台中输出信息,我们可以用这个方法记录错误信息或者提示信息,比如百度首页,console中输出的信息"一张网页,要经历怎样的过程,才能抵达用户面前?一位新人,要经历怎样的成长,才能站在技术之巅?"

19.简单的sql数据库连接字符串写法 

<connectionStrings>
    <add name="conn" connectionString="uid=sa;pwd=123;server=.database=DBTest;"/>
</connectionStrings>

20.如何引用webservice

  首先要添加服务引用,然后在代码中要Using服务的命名空间,接着实例化webservice的SoapClient,接下来就能使用webservice中的方法了。

21.VS中的文件如何与磁盘文件同步

  项目中某个文件夹下的文件,在windows资源管理器中可以看到,但在项目中不显示,这时点显示所有项目,将未显示的项目右键包括在项目中,再刷新下就可以了

22.html屏蔽鼠标右键

  把网页的标签修改为下面的代码:<body oncontextmenu=self.event.returnValue=false onselectstart="return false"

23.html点击文字选中相应的单选按钮

  <input type="radio" id="check1" name="check" /><label for="check1">选项1</label>
  <input type="radio" id="check2" name="check" /><label for="check2">选项2</label>

24.jquery控制css的display(控制元素的显示与隐藏)

  使用jquery真的很方便,比如要控制div的显示与隐藏,一句话就搞定了,请看下面使用说明。

  $("#id").show()表示display:block,

  $("#id").hide()表示display:none;

  $("#id").toggle()切换元素的可见状态。如果元素是可见的,切换为隐藏的;如果元素是隐藏的,切换为可见的。

25.jquery清空文本框的值

  $("#id").val("");清空元素的值。

26.正则验证数字(包含小数)

  ^[0-9]*|[0-9]+(.[0-9]*)$

27.jquery设置元素的onblur事件

  $("#id").live("blur",function(){..........});

28.vs中快速去除所有断点

  ctrl+shift+F9,快速删除所有断点

29.jquery设置元素的宽度

  $("#id").width(100);

30.jquery获取对象的长度

  var length = $("#id").length;

31.jquery加载页面的方法(页面加载完成就执行)

1、$(function(){ 
      //adding your code here 
}); 
2、$(document).ready(function(){ 
  $("#a").click(function(){ 
    //adding your code here   
  }); 
}); 

32.C#控制台应用程序

  1.主函数如何调用本文件中其它类的方法:将新增的类的访问修饰符设置成public

  2.Console.Write(); //将结果打印出,焦点在结果的后面。

  3.Console.WriteLine(); //将结果打印在单独行上,焦点在下一行。

33.C#生成Guid

  string id = System.Guid.NewGuid().ToString();   //字符串类型

  System.Guid guid = System.Guid.NewGuid();     //Guid类型

34.C#格式化时间字符串

  string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"); //使用24小时制格式化日期

  string time = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss.fff"); //使用12小时制格式化日期

35.JS输出随机数

  document.write(10*Math.random());  //输出0~10之间的随机数

  document.write(parseInt(10*Math.random()));  //输出0~10之间的随机整数

  Math.random()方法返回值的范围是0-1之间,不包括0和1,位数在16-18之间(包括小数点)。

36.html中table如何显示单线

<table border="1px" cellspacing=0>
    <tr>
        <th>姓名</th>
        <th>年龄</th>
    </tr>
    <tr>
        <th>张三</th>
        <th>18</th>
    </tr>
</table>

37.设置div的透明度

  background-color: transparent;  //设置背景色为透明;

  opacity:0.5;  //设置透明度为50%;

  filter:alpha(opacity=15);

38.发布网站注意事项

  后台文件(如.ashx)在html页面中的引用是同级的,相应的后台文件名要在web.config配置文件中配置即可。

39.远程桌面连接快捷键

  Ctrl+R,mstsc,回车

40.如果一张表中有多条数据,其中类型字段有重复,如何查出表中的类型数量

   select COUNT(distinct stype) from stable;

41.后台拼的html字符串用jquery替换前台页面的源码

    $("#div").html("<a>YES</a>");

42.js里用正则替换字符串里的特殊字符

    假如str是一个字符串,想替换字符串里的加号的话,在js里可以用 str = str.replace(new RegExp(/\+/g)," "); 

    这样就把字符串里的加号替换为空格了,正则里加号前的反斜杠是转义用的,因为加号在正则里有特殊意义,如果是平常的字符的话,可以不加转义斜杠。

43.vc连接sqlserver数据库连接字符串

    Provider=SQLOLEDB.1;Server=127.0.0.1;DATABASE=TestDB;UID=sa;PWD=123456;

44.网站里配置一般处理程序的映射

    在项目中,配置后台文件的映射一般是写文件的命名空间,在网站中,后台文件没有命名空间,要配置的话就要新加一个cs文件,继承IHttpHandler类,功能和.ashx文件是一样的,

    只不过.ashx文件不能被找到,添加.cs文件只是为了能实现映射而已,cs文件的位置在App_Code文件夹下。

    <httpHandlers>

  <add verb="*" path="test.aspx(虚拟页面)" type="命名空间.类名"/>

    </httpHandlers>

45.网站配置错误页

<system.web>
    <customErrors mode="On" defaultRederect="Error.htm">
      <error statusCode="404" redirect="Error.htm" />
    </customErrors>
</system.web>

46.jquery使用trigger()方法实现控件触发

    $("#ID").trigger("change"); 

    这样一句简单的代码就能触发控件的change事件。

47.Div加滚动条

overflow、overflow-x:scroll、overflow-y:hidden

语法:

overflow : visible | auto | hidden | scroll ;

参数:

1.visible :不剪切内容也不添加滚动条。假如显式声明此默认值,对象将被剪切为包含对象的window或frame的大小。并且clip属性设置将失效

2.auto :此为body对象和textarea的默认值。在需要时剪切内容并添加滚动条

3.hidden :不显示超过对象尺寸的内容

4.scroll :总是显示滚动条

说明:

检索或设置当对象的内容超过其指定高度及宽度时如何管理内容。

设置textarea对象为hidden值将隐藏其滚动条。

对于table来说,假如table-layout属性设置为fixed,则td对象支持带有默认值为hidden的overflow属性。如果设为hidden,scroll或者auto,那么超出td尺寸的内容将被剪切。如果设为visible,将导致额外的文本溢出到右边或左边(视direction属性设置而定)的单元格。

自IE5开始,此属性在MAC平台上可用。

对应的脚本特性为overflow。

48.三元表达式

    string value = !string.IsNullOrEmpty(str)?str:"";

    如果字符串str不为空或不为null的情况下value的值为str的值,否则为空字符串。

49.鼠标经过变手形

  style="cursor:pointer;"

50.html页面如何接收地址栏的参数

    页面引用下jquery.js,用下面的方法就可以接收从另一个页面传过来的参数,例如:location.href="test.html?action=getlist"

$(function () {
            var request = {
                QueryString: function (val) {
                    var uri = window.location.search;
                    var re = new RegExp("" + val + "=([^&?]*)", "ig");
                    return ((uri.match(re)) ? (uri.match(re)[0].substr(val.length + 1)) : null);
                }
            }
            var a = request.QueryString("action");
            if (a) {
                alert(a);
            }
            else {
                alert("未获取到参数");
            }
});

 51.zTree做节点搜索选中

    在文本框中输入汉字,通过name去找tree中的节点,然后选中该项

$(document).ready(function () {
                $.fn.zTree.init($("#tree"), setting, zNodes);
                $("#search").click(function () {
                    var treeObj = $.fn.zTree.getZTreeObj("tree");
                    var nodes = treeObj.getNodesByParam("name", $("#name").val(), null);
                    if (nodes.length > 0) {
                        treeObj.selectNode(nodes[0]);
                        alert(nodes[0].id + "," + nodes[0].name);
                    }
                    else {
                            alert("未找到该项");
                         }
           });
        });

 52.html页面用js屏蔽脚本错误

    如果需要提示错误的话,把注释部分打开即可。

function fnOnError(msg,url,lineno){
    //alert("window.onerror\n\n" +
    //"Error: " + msg + "\n" +
    //"URL:  " + url + "\n" +
    //"Line:  " + lineno);
    return true;
}
window.onerror = fnOnError;

53.FusionCharts图表加载时背景白色问题

    下面代码中的第三句是给swf动画加了一个背景透明的属性,加上这句以后,图表在加载时就不会出现背景白色的情况了。

var myChart = new FusionCharts("FusionCharts/Column2D.swf","chartId","500","400","0","0");
myChart.setDataXML(JsonData);
myChart.addParam("wmode","transparent");
myChart.render("div_chart");

 54.html页面中如何用css隐藏滚动条

html {
   overflow-y: hidden; 
   overflow-x: hidden;
}
/*或者*/
body {
   overflow-y: hidden; 
   overflow-x: hidden;
}

 55.如何用JS格式化数字,每3位加一个逗号

function formatNumber(str){
    if(str.indexOf('.') >= 0)
    {
        //处理小数
        var strarr = str.split('.');
        var intNum = strarr[0];
        var floatNum = strarr[1];
        if(intNum.length <= 3)
        {
            return intNum + floatNum.substr(0,2);//保留两位小数
        }
        else
        {
            return formatNumber(intNum.substr(0,intNum.length - 3)) + ',' + intNum.substr(intNum.length - 3) + '.' + floatNum;
        }
    }
    else
    {
        //处理整数
        if(str.length <= 3)
        {
            return str;
        }
        else
        {
            return formatNumber(str.substr(0, str.length - 3)) + ',' + str.substr(str.length - 3);
        }
    }
}

 56.JS删除确认

<input type="button" value="删除" onclick="if(confirm('确定执行删除操作?')){alert('成功删除');}else{return false;}" />

57.WEB中实现打印预览

<object id="WebBrowser" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" height="0"
    width="0">
</object>
<input type="button" value="打印" onclick="document.all.WebBrowser.ExecWB(6,1)">
<input type="button" value="直接打印" onclick="document.all.WebBrowser.ExecWB(6,6)">
<input type="button" value="页面设置" onclick="document.all.WebBrowser.ExecWB(8,1)">
<input type="button" value="打印OK" onclick="   return   myprint(this);">
<input type="button" value="打印预览" onclick="document.all.WebBrowser.ExecWB(7,1)">

58.JS阻止冒泡(兼容IE和火狐)

一般在IE环境下可以省略掉(var e=arguments.callee.caller.arguments[0]||event;)直接运行即可,但是在FF下不行了,它会报e.stopPropagation没有定义,所以要事先定义,才能兼容。

var e = arguments.callee.caller.arguments[0] || event;
e.stopPropagation();

59.Jquery监测div的change事件

$("#myDiv").bind("DOMSubtreeModified",function(e) { 
   //Add your code here
});

60.CSS控制div直角变圆角

/*这句的作用就是使div的直角变成半径为5像素的圆弧*/
border-radius: 5px;
border-radius: 5px 5px 0px 0px;
-webkit-border-radius: 5px 5px 0px 0px;
-moz-border-radius: 5px 5px 0px 0px;

61.JS获取table的行数和列数

<script type="text/javascript">
function show(){
    var tab = document.getElementById("test") ;
     //表格行数
     var rows = tab.rows.length ;
     //表格列数
     var cells = tab.rows[0].cells.length ;
     alert("行数"+rows+"列数"+cells);
}
</script>

62.MVC模式中浏览静态页

<httpHandlers>
   <add verb="GET,HEAD" path="*.htm" type="System.Web.StaticFileHandler"/>
   <add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/>
</httpHandlers>

63.html页面添加背景音乐

<!--由于<bgsound>标签只能在ie中运行,所以要添加背景音乐的话,需要用到html5中的<audio>标签-->
<html>
  <head>
    <title>背景音乐</title>
  </head>
  <body style="background-color:#ccc;">
    <audio src="http://yinyueyun.baidu.com/data/cloud/downloadsongfile?songIds=14385500&rate=128&format=mp3" autoplay="true" loop="-1"></audio>
  </body>
</html>

64.JS定义对象

做网站时,一个页面可能会用到很多JS文件,那这些JS文件里的方法有可能会重名,在此我们用对象域来区分方法。

//在页面head里先引用一个Jquery类库。
/*例1*/
//定义对象
var System = (function(){
               return{
                 myFunc:function(){
                   alert("Hello World!");
                 }
               } 
             })();
//初始化调用
$(function(){
    System.myFunc();
});

 

65.在一般处理程序中如何使用Session

//首先要添加一个Global.asax文件,就是全局应用程序类,用来控制全局变量。

using System.Web.SessionState;

//然后要继承IReadOnlySessionState类:

public class MyHandler : IHttpHandler,IReadOnlySessionState

//接着就可以设置或者读取Session变量的值了:

context.Session["userId"] = "";

string userid = context.Session["userId"].ToString();

66.等比放大div内的元素

<div style="zoom:150%;"></div>

67.JQuery获取table下的tr

$(function(){
    $("#table1").children("tbody").children("tr").mouseover(function(){
      $(this).css("background-color","yellow");
    });
    $("#table1").children("tbody").children("tr").mouseout(function(){
      $(this).css("background-color","");
    });
});

68.css控制div显示在最上层

z-index:10000;

69.css控制div内容自动换行

word-wrap:break-word;
word-break:break-all;

70.JS查看方法执行时长

console.time('time');

    //add your code here.

console.timeEnd('time');

eg:

var obj1 = {toString: function(){ return 1}};
var obj2 = {toString: function(){ return '1'}};

console.time('==');
for (var i=0; i<1e6; i++) {
    1 == 1;
    '1' == 1;
    obj1 == 1;
    obj2 == 1;
}
console.timeEnd('==');

console.time('===');
for (var i=0; i<1e6; i++) {
    1 === 1;
    '1' === 1;
    obj1 === 1;
    obj2 === 1;
}
console.timeEnd('===');

71.Jquery.getJson跨域调用webservice

/*在服务端设置*/
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "*");
<!--请求页面html设置-->
<meta http-equiv="Access-Control-Allow-Origin" content="*">

72.Mysql数据库中如何拼接字段数据

SELECT CONCAT('11','22','33')
-- 结果 112233

73.Mysql数据库中CASE WHEN

-- 查询月份,当月份小于10的时候,在月份前补0
SELECT CASE  WHEN month< 10 THEN CONCAT('0',month)  
WHEN ISNULL(month) THEN '0' 
ELSE month END 
FROM Table_datetime

74.Mysql计算datetime数据的小时差

-- UNIX_TIMESTAMP函数把日期转换为秒,除以3600得到小时数
SELECT (UNIX_TIMESTAMP('2014-05-07 20:00')-UNIX_TIMESTAMP('2014-05-07 17:30'))/3600

75.JS中提示效果,显示3秒后自动消失

$("#msg").fadeIn("1000", function () {
    setTimeout(function () {
        $("#msg").fadeOut("1000");
    }, 3000);
});

76.CSS给文字加删除线

text-decoration: line-through;

77.VS2010中ashx文件代码折叠方法

工具->选项->文本编辑器->文件扩展名,右侧添加ashx,选中Microsoft Visual C#,添加,确定。

78.Jquery获取select选中文本

$("#select").find("option:selected").text();

 79.sql语句查看字段的类型

select a.name as [column],b.name as type
from syscolumns a,systypes b
where a.id=object_id('表名') and a.xtype=b.xtype and a.name='列名'

80.JS刷新页面

location.reload(true);
/*true:相当于F5刷新页面,从服务器获取最新数据。*/
/*false:从客户端缓存中获取页面。*/

81.Jquery移除元素属性

/*移除元素的readonly属性*/
$("#id").removeAttr("readonly");

82.sql分页语句

select  result.* from ( 
select row_number() over(order by [排序的字段] desc) as rowNumber,* from [表名] --where条件
)as result where result.rowNumber between [每页条数]* ([当前页码]-1)+1 and [每页条数]*[当前页码]

83.DoNet中服务器控件 OnClientClick 和 OnClick 方法一起用

  有些情况下需要客户端验证后再到服务器端验证,就需要以上两个方法一起使用,当客户端的方法返回false的时候就不提交到服务器继续验证了。

  如果客户端的方法返回false,而服务器端方法继续执行的话,请在客户端方法前加上return

  如:<asp:Button ID="Button1" runat="server" OnClientClick="return clientFun()" OnClick="Button1_Click" Text="Submit" />

  这样的话,在客户端方法返回false 的时候就不会执行服务器端的方法了。

 84.通过换行符分割字符串

var str = "这是第一行文本
这是第二行文本";
var arr = str.Split(Environment.NewLine.ToCharArray());

85.IE7、IE8设置透明度

filter:alpha(opacity:30);

86.Jquery控制按钮可用、不可用

//Disable:
$("#btnId").attr("disabled", true);

//Re-enable:
$("#btnId").removeAttr("disabled");

87.在IE浏览器中用Firebug调试

/*只需在页面head中引用文件,就可以在IE浏览器中用Firebug调试*/
<script type="text/javascript" src="http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js"></script>

88.C#获取网站根目录

string webRootUrl = System.Web.HttpContext.Current.Request.PhysicalApplicationPath;

89.C#获取域名和端口号

string webUrl = HttpContext.Current.Request.Url.Host.ToString();    /*获取域名*/
string port = HttpContext.Current.Request.Url.Port.ToString();      /*获取端口号*/

90.正则验证数字

/*正则验证数字*/
function Validate_number(value) {
    //定义正则表达式部分
    var reg = /^\d+$/;
    if (value.constructor === String) {
        var re = value.match(reg);
        if (re) {
            return true;
        }
    }
    return false;
}

91.正则验证邮箱

/*正则验证邮箱*/
function Validate_email(value) {
    var reg = /^([\.a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
    if (value.constructor === String) {
        var re = value.match(reg);
        if (re) {
            return true;
        }
    }
    return false;
}  

92.ashx读取Session

首先要继承 System.Web.SessionState.IReadOnlySessionState 的接口

其中:System.Web.SessionState.IReadOnlySessionState为只读会话的接口

而:System.Web.SessionState.IRequiresSessionState 为可读可写会话的接口

using System.Web.SessionState;
public class XX: IHttpHandler, IReadOnlySessionState
//读取
context.Session["key"]

93.ashx创建、读取Cookie

/*创建*/
HttpCookie cookie = context.Request.Cookies["myCookie"];
if (cookie == null)
{
    cookie = new HttpCookie("myCookie");
}
cookie.Values.Set("UserID", "xxx");
cookie.Expires = DateTime.Now.AddMinutes(20); context.Response.SetCookie(cookie);
/*读取*/ HttpCookie cookie = context.Request.Cookies["myCookie"]; if (cookie != null && cookie["UserID"].ToString() != "") { context.Response.Write("cookie=" + cookie["UserID"].ToString()); }

94.设置div内容超出宽度自动换行

word-wrap: break-word; word-break: normal;

95.Javascript判断浏览器Cookie是否禁用

/*检测浏览器Cookie是否禁用*/
function CheckCookieEnable() {
    if (!navigator.cookieEnabled) {
         alert("Cookie已禁用");
         return;
    }
     alert("Cookie可用");
}

96.Js控制父页面滚动条的位置

 

/*最外层的页面滚动条置顶*/
top.window.document.body.scrollTop = 0;

/*上一级页面滚动条置顶*/
parent.window.document.body.scrollTop = 0;

/*Jquery设置本页面滚动条置顶*/
$("body").scrollTop(0);

/*控制滚动条的位置置顶*/
document.documentElement.scrollTop = 0;

 

97.控制元素垂直居中

<img src="logo.jpg"  align="absmiddle" />

98.在iframe子页面获取父页面元素的方法

$("#objld", parent.document); 

99.C#计算两个日期相隔天数

DateTime StartDate = DateTime.Now;
DateTime EndDate = StartDate.AddYears(1);
int days = Math.Abs(((TimeSpan)(EndDate - StartDate)).Days);

100.Jquery Ajax火狐浏览器返回的result为何是object XmlDocument?因为ajax请求缺少dataType属性。

101.Jquery的dataType包括:
        ①"xml": 返回 XML 文档,可用 jQuery 处理。
        ②"html": 返回纯文本 HTML 信息;包含的 script 标签会在插入 dom 时执行。
        ③"script": 返回纯文本 JavaScript 代码。不会自动缓存结果。除非设置了 "cache" 参数。注意:在远程请求时(不在同一个域下),           
             所有 POST 请求都将转为 GET 请求。(因为将使用 DOM 的 script标签来加载)
        ④"json": 返回 JSON 数据 。
        ⑤"jsonp": JSONP 格式。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回
            调函数。
        ⑥"text": 返回纯文本字符串
 102.键盘快捷键,回车键-window.event 兼容IE和火狐
/*body的onkeydown事件时调用*/
        function onEnterDown(event) {
            event = event || window.event;
            if (event.keyCode == 13) {
                /*add your code here*/
            }
        }
<body onkeydown="onEnterDown(event);">

 103.子页面调用父页面中的方法

/*一、在页面里用 open 打开的子页面:*/

    //子页面调用父页面的方法,包括子页面给父页面传值:  
   window.opener.methodName();
   window.opener.methodName(param1,param2);

    //父页面关闭子页面:在父页面 
   var openWin=window.open(""); openWin.close();

/*二、在Iframe 的子页面里*/

   //子页面给父页面的Div赋值
   parent.window.document.getElementByIdx_x('id').innerHTML='';

   //调用父页面的方法
   window.parent.window.methodName();

   //刷新父页面
   window.parent.location.reload();

104.sql server语句添加字段索引

create index 索引名称 on 表名 (字段);

105.sql server排序规则

--查看表的collate(排序规则)
select * from syscolumns where id=OBJECT_ID('表名')
--如果连表查询提示排序规则不一致时,可指定排序规则显示(COLLATE Latin1_General_CI_AS),如
select * from tb1 inner join tb2 on tb1.name=tb2.name COLLATE Latin1_General_CI_AS

106.sql server查看执行过的语句

SELECT TOP 1000 
--创建时间 
QS.creation_time, 
--查询语句 
SUBSTRING(ST.text,(QS.statement_start_offset/2)+1, 
((CASE QS.statement_end_offset WHEN -1 THEN DATALENGTH(st.text) 
ELSE QS.statement_end_offset END - QS.statement_start_offset)/2) + 1 
) AS statement_text, 
--执行文本 
ST.text, 
--执行计划 
QS.total_worker_time, 
QS.last_worker_time, 
QS.max_worker_time, 
QS.min_worker_time 
FROM 
sys.dm_exec_query_stats QS 
--关键字 
CROSS APPLY 
sys.dm_exec_sql_text(QS.sql_handle) ST 
WHERE 
QS.creation_time BETWEEN '2015-06-01' AND '2015-06-03' 
--AND ST.text LIKE '%%' 
ORDER BY 
QS.creation_time DESC

107.修改sqlserver sa的密码

exec sp_password null,'你的新密码','sa'

108.sqlserver数据库,为用户授予执行存储过程的权限

--为用户授予执行procedure1的权限
grant execute on procedure1 to user1

109.Handler返回错误状态Ajax执行error方法

context.Response.StatusCode = 500;

110.计算字符串中指定字符的出现次数

using System.Text.RegularExpressions;
int count = Regex.Matches(整个字符串,要查询的字符).Count;

111.sp_executesql的用法

在存储过程中,如果定义的sql过长的话,是会报截断错误的,因为varchar最大长度是4000,我们可以用exec(@sql)来解决,例子:

exec'select @count=count(empid) from '+@tableName+' where proid='+@proid+' and id<'+@id+' and state!=4'

112.获取元素到浏览器边框的距离

/*距离左边框距离*/
var _x = $("xxx").offset().left;
或者:
var _x = $("xxx").position().left;

113.IE8版本以下的Background,用Filter滤镜调整背景图片的大小

/*背景图片兼容IE7、8*/
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='图片的绝对路径',sizingMethod='scale');

114.控制文本单行显示,超出部分用省略号代替,再配合title属性,鼠标浮动时看全部内容

white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;

115.Sql Server数据库定义存储过程,重新执行所有视图

CREATE PROCEDURE [dbo].[RefreshAllView] AS
DECLARE MyCursor CURSOR
FOR select Name from dbo.sysobjects where OBJECTPROPERTY(id, N'IsView') = 1 and (not name in ('sysconstraints','syssegments')) 
 
  
DECLARE @name varchar(40)
OPEN MyCursor
 
FETCH NEXT FROM MyCursor INTO @name
WHILE (@@fetch_status <> -1)
BEGIN
 IF (@@fetch_status <> -2)
 begin
 exec sp_refreshview @name
 end
 FETCH NEXT FROM MyCursor INTO @name
END
 
CLOSE MyCursor
DEALLOCATE MyCursor

GO

 116.两个路由器串联

需要关闭第二台路由的DHCP功能,然后将路由的一个Lan口接到第一台路由的LAN口上。

 117.C#后台操作Json数据

using Newtonsoft.Json.Linq;
string jsonstr="{\"a\":\"1\",\"b\":\"2,3,4\",\"c\":\"5,6\",\"d\":\"7\"}";
JObject obj = JObject.Parse(jsonstr);
string stra = (string)obj["a"];

118.Jquery移除元素绑定事件

$("p").unbind();
$("p").unbind("click");

119.sqlserver用row_number和partition by分组取top数据

--sqlserver用row_number和partition by分组取top数据,下例是取每组数据的前5条
SELECT * from (
    SELECT rid=ROW_NUMBER() OVER(PARTITION BY [主子表关联字段] ORDER BY [排序字段] asc),*   FROM [详细信息表]) AS T 
WHERE rid<=5

120.设置滚动条样式

/*Chrome,以下写法针对页面所有的滚动条,单独给某元素设置的话在::前加#Id*/
/* 设置滚动条的样式 */::-webkit-scrollbar {    width: 8px;}
/* 滚动槽 */::-webkit-scrollbar-track {    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);    border-radius: 10px;}
/* 滚动条滑块 */::-webkit-scrollbar-thumb {    border-radius: 10px;    background:#e5e5e5;     -webkit-box-shadow: inset 0 0 6px #d0cdcd; }
/* 滚动条不活动状态 */::-webkit-scrollbar-thumb:window-inactive {    background:white; }

/*IE中只能设置颜色,不能改变宽度*/
scrollBar-face-color:#e5e5e5;  
scrollBar-hightLight-color:#e5e5e5;  
scrollBar-3dLight-color:#e5e5e5;  
scrollBar-darkshadow-color:#e5e5e5;  
scrollBar-shadow-color:#e5e5e5;  
scrollBar-arrow-color:transparent;  
scrollBar-track-color:transparent;  
scrollBar-base-color:transparent; 

121.HttpFileCollection 转 Stream, byte[]读取文件

HttpFileCollection files = context.Request.Files;
        if (files.Count > 0)
        {
            HttpPostedFile file = files[0];
            Stream fs = file.InputStream;
            BinaryReader br = new BinaryReader(fs);
            byte[] bytes = br.ReadBytes((int)fs.Length);
            fs.Flush();
            fs.Close();
        }

122.下载文件,输出文件流

/*在aspx页面中适用*/
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}", 
           HttpUtility.UrlEncode(DateTime.Now.ToString("yyyy-MM-dd"), System.Text.Encoding.UTF8)));
Response.BinaryWrite(byte);
Response.End();

123.计算文件大小,取整

/*函数:Math.Ceiling()上取整、Math.Floor()下取整 */
/*
计算文件大小,文件大于1M,单位用M,其他用KB*/ if (filelen > 1048576) {   filesize = Math.Ceiling((double)filelen / (double)1024 / (double)1024) + "M"; } else {   filesize = Math.Ceiling((double)filelen / (double)1024) + "KB"; }

124.Json返回数据<pre></pre>标签问题

当后台获取到前台传来的文件时(例如上传功能, 导入功能), 返回类型为application/json, 这个时候响应到前端的JSON格式的数据格式可能是:

<pre style="word-wrap: break-word; white-space: pre-wrap;">{"JsonKey":"JsonValue"}</pre>

这个是不同浏览器对返回数据处理的问题。

解决方法:

/*1.前端解决*/
var
reg = /<pre.+?>(.+)<\/pre>/g; var result = data.match(reg); data = RegExp.$1;
/*2.后台解决*/
/*将返回的类型从application/json改为text/html*/
Response.ContentType = "text/html";

125.Web.config限制上传文件大小,加在<system.web>中,当前限制为1G

<!--maxRequestLength就是文件的最大字符数,单位是byte,当前限制是1G,最大值不能超过2个G,executionTimeout是超时时间,单位毫秒-->
<httpRuntime maxRequestLength="1073741824" executionTimeout="3600000"/>

126.WebService上传较大文件,请求因 HTTP 状态 404 失败: Not Found。

<!--Web.config配置文件<configuration>标签下添加如下内容,大小限制200M-->
<system.webServer>
    <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="209715200"></requestLimits>
      </requestFiltering>
  </security>
</system.webServer>

127.Sql Server,把一列数据拼接成字符串

--Sql Server,把一列数据拼接成字符串
select notes= stuff((select ',' + note from table_A for xml path('')), 1, 1, '')

128.C#计算页数,分页

int totalpage=rowscount%Convert.ToInt32(pagesize)==0?rowscount/Convert.ToInt32(pagesize):rowscount/Convert.ToInt32(pagesize)+1;

129.C#IO获取文件名称

HttpFileCollection files = context.Request.Files;
/*获取真实文件名,files[0].FileName这种方法在IE浏览器中上传会带有F://路径*/
string filename = System.IO.Path.GetFileName(files[0].FileName);

130.js客户端判断文件大小限制上传

function CheckFileSize() {
    var msg = "true";
    var isIE = /msie/i.test(navigator.userAgent) && !window.opera;
    var fileSize = 0;
    var obj = document.getElementById("_file");
    if (isIE && !obj.files) {
        var filePath = obj.value;
        var fileSystem = new ActiveXObject("Scripting.FileSystemObject");
        var file = fileSystem.GetFile(filePath);
        fileSize = file.Size;
    } else {
        fileSize = obj.files[0].size;
    }
    var size = fileSize / 1024 / 1024;
    if (size > 150) {
        alert("附件不能大于150M,请重新选择!");
        msg = "false";
    }
    return msg;
}

131.js获取鼠标坐标

/*定位鼠标,获取坐标,下面两句一个获取屏幕坐标,另一个是页面坐标*/
function(e){
    var _x = e.originalEvent.x || e.originalEvent.layerX || 0;
    var _y = e.originalEvent.y || e.originalEvent.layerY || 0;
    var _pagex = e.pageX;
    var _pagey = e.pageY;  
}

132.添加网站favicon.ico,页面head中加入下列标记

<link rel="icon" href="favicon.ico" type="image/x-icon" />
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />

133.jQurey监听页面滚动事件

jQuery(document).ready(function () {
    $(window).bind("scroll", function () {
        var _scrolltop = $(document).scrollTop();
        console.log(_scrolltop);
        /*add your code here*/
    });
});

134.Sql Server 循环语句

declare @cur int

set @cur=1
while @cur<=10
begin

update table1 set col=@cur where ID=@cur
set @cur=@cur+1

end

135.Javascript原生ajax示例

var xmlhttp;
if (window.XMLHttpRequest) {
  /*IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码*/   xmlhttp
= new XMLHttpRequest(); } else {
  /*IE6, IE5 浏览器执行代码*/ xmlhttp
= new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange = function () { if (xmlhttp.readyState==4&&xmlhttp.status==200) {   document.getElementById("box-content").innerHTML = xmlhttp.responseText; } } xmlhttp.open("get", "Demo.ashx?action=GetAjaxData", true); xmlhttp.send();

136.EF中Exception类,可以看出具体字段出的问题

System.Data.Entity.Validation.DbEntityValidationException

 

posted @ 2012-12-04 12:50  Jackie Hao  阅读(1583)  评论(0编辑  收藏  举报