前期的文章对自己日常工作中常用的代码做了总结,下面继续补充。
日期格式的显示
<%#Eval("swmlsj", "{0:yyyy-MM-dd}")%>
货币格式显示
swmlsj.Text = Convert.ToDateTime(dt.Rows[0]["swmlsj"]).ToString("yyyy-MM-dd"); //日期格式 xzjsd.Text = dt.Rows[0]["xzjsd"].ToString(); xzjje.Text = Convert.ToDecimal(dt.Rows[0]["xzjje"]).ToString("C"); //货币格式
表格数据汇总
//求和 Decimal jg = 0; for (int i = 0; i < dt.Rows.Count; i++) { jg += Convert.ToDecimal(dt.Rows[i][8]); //注意哪个列 } aaa = jg.ToString("C") + ";<br>大写:" + Common.Tools.CmycurD(jg).ToString();
时间控件
死亡冒领时间:<asp:TextBox ID="swmlsj" runat="server" οnfοcus="WdatePicker({autoPickDate:true,dateFmt:'yyyy-MM-dd'})" autocomplete="off"></asp:TextBox>
文本框失去焦点检测
身份证号码:<asp:TextBox ID="sfzh" runat="server" autocomplete="off" οnblur="CheckUser()"></asp:TextBox><br />
链接传递多个参数
<a href='<%#String.Format("zhuijiao_update.aspx?id={0}&xm={1}&sfzh={2}",Eval("id"),Eval("xm"),Eval("sfzh")) %>'>追缴进度</a>
前台显示
<td><%#string.IsNullOrEmpty(Eval("btlx").ToString())?"未设置":Eval("btlx")%> </td> <td> <%# Eval("zy").ToString().Length >20? Eval("zy").ToString().Substring(0, 20) + ".." : Eval("zy")%> </td>
异步操作JS
<script language="javascript" type="text/javascript"> function CheckUser() { var userid = $("#sfzh").val(); if (userid.length > 0) { $.ajax({ type: 'get', url: 'zhuiid_check.ashx', contentType: "application/json;charset=utf-8", dataType: "text", data: { userid: userid }, success: function (data) { if (data == "True") { window.alert('已经存在'); $("#sfzh").focus(); } else { window.alert('可以使用'); } }, error: function () { window.alert('发生错误!'); } }); } else { window.alert('不能为空'); $("#sfzh").focus(); } } /*记录-删除*/ function rec_del(id) { if (prompt("请输入密码:") == 'ok') { //发异步删除数据 $.ajax({ type: 'get', // HTTP 请求方法 url: 'zhuijiao_del.ashx', //发送请求的地址 contentType: "application/json;charset=utf-8", //发送信息至服务器时内容编码类型,默认为"application/x-www-form-urlencoded" dataType: "text", //返回纯文本字符串。 data: { delid: id }, //发送到服务器的数据 success: function (data) { alert(data); location.reload(); }, error: function () { alert("出错了!请稍候再试!"); } }); } else { alert("密码错误!"); } } </script>
序号自增
<%# Container.ItemIndex + 1%>
CSS样式
<style type="text/css"> *{ line-height:20px; margin-bottom:5px; vertical-align:middle;} </style>
非空判断
if (!string.IsNullOrEmpty(xzjsd.Text)) { model.xzjsd = xzjsd.Text.Trim(); }
转换为大写字母
model.sfzh = sfzh.Text.Trim().ToUpper(); // 转大写
获取下拉列表的值
model.xz = xz.Value; //下拉列表
类型转换
int id = int.Parse(context.Request.QueryString["delid"]);
导出XLS
//导出全部数据 protected void export_Click(object sender, EventArgs e) { DataTable dt = new DAL.shbt_ry().GetAllList(); MemoryStream ms = DataTableRenderToExcel.DataTableToExcel(dt, "请核对导出数据"); Response.AddHeader("Content-Disposition", string.Format("attachment; filename=" + DateTime.Now.ToString("yyyy-MM-dd_HH_mm_ss_fff") + ".xls")); Response.BinaryWrite(ms.ToArray()); Response.ContentType = "application/ms-excel"; ms.Close(); ms.Dispose(); }
清空
this.RepList1.Controls.Clear();//清空当前内容 RepList1.DataSource = string.Empty; RepList1.DataBind();
显示PDF
string url = Request.QueryString["url"]; Response.ContentType = "application/pdf"; Response.Clear(); Response.TransmitFile(url); Response.End();
下载文件
string fileURL = HttpContext.Current.Server.MapPath("~") + url; FileInfo fileInfo = new FileInfo(fileURL); Response.Clear(); Response.AddHeader("content-disposition", "attachment;filename=" + Server.UrlEncode(fileInfo.Name.ToString())); Response.AddHeader("content-length", fileInfo.Length.ToString()); Response.ContentType = "application/octet-stream"; Response.ContentEncoding = System.Text.Encoding.Default; Response.WriteFile(fileURL);
打印JS代码
<input type="button" name="button_print" value="打印" οnclick="javascript:printHTML()"> <script type="text/javascript"> /**打印页面*/ function printHTML(_this) { // 获取当前页的html代码 var bdhtml = window.document.body.innerHTML; /*//设置打印开始区域 //var startStr = '<!--startprint-->'; // 设置打印结束区域 //var endStr = '<!--endprint-->'; //从标记里获取需要打印的页面 var printHtml = bdhtml.substring(bdhtml.indexOf(startStr) + startStr.length, bdhtml.indexOf(endStr));*/ //隐藏不必要的按钮和样式 // 通过id获取需要打印的页面 var printHtml = document.getElementById('form-div').innerHTML; // 需要打印的页面 window.document.body.innerHTML = printHtml; if (!!window.ActiveXObject || "ActiveXObject" in window) { //是否ie remove_ie_header_and_footer(); } //调用打印 window.print(); // 还原界面 window.document.body.innerHTML = bdhtml; window.location.reload(); } //去掉页眉、页脚 function remove_ie_header_and_footer() { var hkey_path; hkey_path = "HKEY_CURRENT_USER\\Software\\Microsoft\\Internet Explorer\\PageSetup\\"; try { var RegWsh = new ActiveXObject("WScript.Shell"); RegWsh.RegWrite(hkey_path + "header", ""); RegWsh.RegWrite(hkey_path + "footer", ""); } catch (e) { } } </script>
页面边距CSS
@page { margin-top:30px; margin-bottom:20px;}
空格回车的转换
/// <summary> /// 对输入的html编码,同时对回车与空格进行转换 /// </summary> /// <param name="str"></param> /// <returns></returns> public string htmlEncode(string str) { return Server.HtmlEncode(str).Replace("\n", "<br/>").Replace(" ", " "); }
验证输入数字
年龄:<asp:TextBox ID="age" runat="server" οnchange="if(/\D/.test(this.value)){alert('只能输入整数');this.value='';}" ></asp:TextBox><br /> 分数:<asp:TextBox ID="score" runat="server" οnkeyup="value=value.replace(/[^\d^\.]+/g,'')" ></asp:TextBox><br />
静态页面访问密码
<script type="text/javascript"> loopy() function loopy() { var sWord ="" while (sWord != "123") {//设置密码 sWord = prompt("输入正确密码才能登陆!") } alert("欢迎访问") } </script>
显示datatable内容
for (int i = 0; i < dt.Rows.Count; i++) { for (int j = 0; j < dt.Columns.Count; j++) { Response.Write(dt.Rows[i][j].ToString()+","); } Response.Write("<br>"); }
汉字转拼音首字母
public class Common { /// <summary> /// 获取汉字首字母(可包含多个汉字) /// </summary> /// <param name="strText"></param> /// <returns></returns> public string GetChineseSpell(string strText) { int len = strText.Length; string myStr = ""; for (int i = 0; i < len; i++) { myStr += getSpell(strText.Substring(i, 1)); } return myStr; } public string getSpell(string cnChar) { byte[] arrCN = Encoding.Default.GetBytes(cnChar); if (arrCN.Length > 1) { int area = (short)arrCN[0]; int pos = (short)arrCN[1]; int code = (area << 8) + pos; int[] areacode = { 45217, 45253, 45761, 46318, 46826, 47010, 47297, 47614, 48119, 48119, 49062, 49324, 49896, 50371, 50614, 50622, 50906, 51387, 51446, 52218, 52698, 52698, 52698, 52980, 53689, 54481 }; for (int i = 0; i < 26; i++) { int max = 55290; if (i != 25) max = areacode[i + 1]; if (areacode[i] <= code && code < max) { return Encoding.Default.GetString(new byte[] { (byte)(65 + i) }); } } return "*"; } else return cnChar; } }