C#页面前台绑定数据 <%%><%#%><%=%>
ASP.net前台绑定用的最多,今天小小总结一下。
1:<%#Eval("")%>
2:<%#Bind("")%>
3:<%=变量%>
1:<%#Eval("数据列")%> 主要用于需要进行更改的数据列
如:我需要将<%#Eval("性别")%> =1 ;将1转换成女。
首先在.CS文件中定义一个方法:
/// <summary>
/// 转换性别
/// </summary>
/// <param name="obj"></param>
/// <returns></returns>
public object ChangeSex(object obj)
{
if (obj.ToString() == "0")
{
return "男";
}
else
{
return "女";
}
}
<%#ChangeSex(Eval("性别"))%>=女
可以把这些公共的转换方法全部放到一个公共类文件中,进行调用之。调用方法为:
<%#命名空间.公共类名.方法名("列")%>
<%# Common.ChangeSex(Eval("性别"))%>
也可以进行时间截取
如1: <%# Eval("StartTime", "{0:yyyy-MM-dd}")%>
或者2: <%# Convert.ToDateTime(Eval("StartTime").ToString()).ToString("yyyy-MM-dd")%>
2:<%#Bind("数据列")%>
常见于GridView中的不需要进行处理的数据列绑定。
3:<%=变量%>
需要在后台.cs文件中声明一个public的变量
public string userInfo= "数据";
直接调用就OK了
但是我们一般不会这样直接写一个定值;
就需要这样写了:
public string StrOrders
{
set
{
ViewState["Orders"] = value;
}
get
{
if (ViewState["Orders"] == null)
{
ViewState["Orders"] = "";
}
return ViewState["Orders"].ToString();
}
}
------------------------------------------------------------------------------------------------------------------
1)Eval绑定
可以绑定一个单独的字段 Eval("houseID")
也可以绑定一个函数 <%# houseEdit(Eval("infoType"), Eval("houseID"))%>
2)Bind绑定
两者的区别:Eval 方法是静态单向(只读)方法,所以Eval 函数用于单向(只读)绑定,该方法采用数据字段的值作为参数并将其作为字符串返回。Bind 方法支持读/写功能,所以Bind 函数用于双向(可更新)绑定。该方法可以检索数据绑定控件的值并将任何更改提交回数据库。
3)InnerHtml :可以给前台的相关标签如<ul><li><div>等定义id属性和runat属性,然后在后台的代码中绑定id的innerHtml即可。这种方法很便捷,而且能够很好的实现前后台交互,但是注意InnerHtml内容中的一些html标签和属性值中的转义字符。细心是很重要的哦,我就曾经忘记给<a>写结束标签,导致在ie 8里面显示错位。但在其他浏览器中一切正常,一时之间无法排错,还以为是前台设计兼容性的问题那,怎么折腾了半天。
4)在html代码中写入 <%=dll_info.bll.getNewsList.getList() %>
然后在后台书写带返回值的静态方法getList,然后把相关的html代码在后台做绑定,返回到前台来。其实和上面的方法有相似之处,不过这种方法可以很好的实现代码复用。但是不可以有效的和页面上的一些服务器控件交互。
5)还有一种更普遍的就是写JavaScript代码做处理,这里就不举例了。
-----------------------------------------------------------------------------------------------------------------------------------------
<input type="hidden" name="hidFlag">
<% if( Request["hidFlag"].ToString() == "1"){%>
<input type="button">
<% }else if(Request["hidFlag"].ToString() =="2"){%>....
<%# DataBinder.Eval(Container.DataItem,"Time").ToString()=="" ? "暂无信息":DataBinder.Eval(Container.DataItem, "Time") %>
该时间字段,不为空,就绑定时间,为空,就显示暂无信息。
C#页面前台绑定数据 <%%><%#%><%=%>的更多相关文章
- 14Flutter StatefulWidget有状态组件、页面上绑定数据、改变页面数据、实现计数器功能、动态列表
/** * Flutter StatefulWidget有状态组件.页面上绑定数据.改变页面数据 * 在Flutter中自定义组件其实就是一个类,这个类需要继承StatelessWidget/Stat ...
- Flutter StatefulWidget 有状态组件、页面上绑定数据、改变页面数据
在 Flutter 中自定义组件其实就是一个类,这个类需要继承 StatelessWidget/StatefulWidget. StatelessWidget 是无状态组件,状态不可变的 widget ...
- StatelessWidget 无状态组件 StatefulWidget 有状态组件 页面上绑定数据、改变页面数据
一.Flutter 中自定义有状态组件 在 Flutter 中自定义组件其实就是一个类,这个类需要继承 StatelessWidget/StatefulWidget. StatelessWidget ...
- Java 前台后台数据传递、中文乱码解决方法
1.向前台传递数据;2.向后台传递数据;3.ajax post 提交数据到服务端时中文乱码解决方法;4.数组类型参数传递; 1.向前台传递数据:1.1 字符串数据传递: 这种方式只是单一的向前台传递 ...
- 微信小程序自学第二课:app及页面的生命周期、使用setData绑定数据
一.App声明周期 1.App() app.js中的App() 函数用来注册一个小程序.接受一个 object 参数,其指定小程序的生命周期函数等. 示例代码: App({ onLaunch: fun ...
- ASP.NET前台html页面AJAX提交数据后台ashx页面接收数据
摘要:最近在写网站,好不容易弄好了需求又变了,没错企业的门户网站硬要弄成后台管理系统一样,没办法作为小工的我只能默默的改.前台HTML页面需要提交数据到后台处理,又不能用form表单,于是乎研究了1天 ...
- 在aspx页动态加载ascx页面内容,给GridView控件绑定数据
在aspx页动态加载ascx页面内容 //加载ascx页面内容Control c1 = this.Page.LoadControl("WebUserControl1.ascx"); ...
- ASP.ENT前台更改绑定数据的日期格式
1.Eval和Bind的区别 绑定表达式 < %# Eval("字段名") %> < %# Bind("字段名") %> 区别 1.ev ...
- 【WPF】绑定数据
WPF绑定数据 模型类(继承 INotifyPropertyChanged,实现属性的变更通知)
随机推荐
- css模糊效果
CSS代码: .blur { filter: url(blur.svg#blur); /* FireFox, Chrome, Opera */ -webkit-filter: blur(10px); ...
- Java-->服务器的响应(Servlet--doGet&doPost)
--> Servelet: 用于接收请求(客户端,浏览器),做出响应的,服务器端的,java类 --> ServletLogin -- Web项目服务器响应的Java实现 package ...
- 神奇的盒模型(BFC)
上一篇我提到每一个元素都有自己的display属性,其属性值可以改变.其改变的方式,可以利用神奇的css盒模型(BFC). 盒模型,是css可视化格式化系统的基础,可以用于元素定位和网页布局.一个盒模 ...
- Linux应用领域
1.基于Linux的企业服务器 www.netcraft.com 可以看到网站的后台服务 2.嵌入式应用
- Oracle学习系列6
Oracle学习系列6 ************************************************************************************ 删除约 ...
- 深入理解AOP
引子: AOP(面向方面编程:Aspect Oriented Programing)和IoC一样是Spring容器的内核,声明式事务的功能在此基础上开花结果.但是AOP和OOP差别较大,要很好地理解这 ...
- ajax中返回json数据有"
1.将“转义为\" string table=sb.ToString(); table.Replace("\"","\\\"");
- 论文笔记之:Dueling Network Architectures for Deep Reinforcement Learning
Dueling Network Architectures for Deep Reinforcement Learning ICML 2016 Best Paper 摘要:本文的贡献点主要是在 DQN ...
- IntelliJ IDEA15导入jar包
在IDEA中导入jar包和eclipse中是不一样的,那么现在我们就来看看在IDEA中如何导入jar包. 1.点击"File"-->"Project Structu ...
- 是不是content-type: text/html的数据包一到,浏览器就肯定刷新页面?
整理自:http://q.cnblogs.com/q/54726/ 是不是content-type: text/html的数据包一到,浏览器就肯定刷新页面? 或者说,浏览器收到的状态正常的conten ...