任意导出excel实例代码:
<form action="/toexcel.aspx">
<select name="is_lock" size="1">
<option value="">全部</option>
<option value="0" selected>通过</option>
<option value="1">不通过</option>
</select>
日期从<input type="input" name="dateStar" value="" class="date" onfocus="WdatePicker({dateFmt:'yyyy-MM-dd'})"> 到<input type="input" name="dateEnd" class="date" value="" onfocus="WdatePicker({dateFmt:'yyyy-MM-dd'})">
<input type="submit" value="导出excel">
</form>
代码
<%csharp%>
Response.AddHeader("Content-Disposition", "attachment; filename=学员信息.csv;charset=GB2312");
//Response.ContentType = "text/html";// 指定返回的是一个不能被客户端读取的流,如果是excel为:application/ms-excel 如果是html为:text/html
Response.ContentType = "application/csv";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");//用GB2312编码保证不是乱码
//Response.Write("id,标题");//表头:根据数据库查出来的字段填写,用逗号分隔
<%/csharp%>
<%csharp%>
string sqlstr="1=1 ";
if (!string.IsNullOrEmpty(Request.QueryString["is_lock"])) //是否为空
{
sqlstr = sqlstr + " and is_lock=" + Request.QueryString["is_lock"] + ""; //不为空则加入查询条件
}
if (!string.IsNullOrEmpty(Request.QueryString["dateStar"])&&!string.IsNullOrEmpty(Request.QueryString["dateEnd"]))
{
sqlstr = sqlstr + " and add_time between '" + Request.QueryString["dateStar"] + "' and '" + Request.QueryString["dateEnd"] + "'";
}
<%/csharp%>
<%set DataTable Dt=NetWingGetAnyTable("SELECT * FROM dt_netwing_full_sigin where "+{sqlstr}+"")%>
<%loop Dr Dt%>
{Dr[id]},{Dr[netwing_cenjing]},{Dr[netwing_whatkind]},{Dr[netwing_whatkind]},{Dr[netwing_username]}<%/loop%><%csharp%>//这里紧挨着不要换行否则也要跟着换行<%/csharp%>
Copyright © 2004-2024 Ynicp.com 版权所有 法律顾问:建纬(昆明)律师事务所 昆明市网翼通科技有限公司 滇ICP备08002592号-4