| 一般來說:eval 用于單向輸出;bind 除了輸出,還可以接收客戶端提交的值。 eval<asp:TextBox runat="server" Text='<%# Eval("CompanyName") %>'></asp:TextBox> 這種情況下,輸出 CompanyName 到客戶端后,用戶再提交,這個(gè)值還會(huì)返回給服務(wù)器端,因?yàn)樗俏谋究蚵铮峤皇翘峤?,沒有哪個(gè)控件會(huì)理會(huì)這個(gè)值,也就是說其提交的值不會(huì)被哪個(gè)控件使用。 所以更多的情況下,我們沒有在 TextBox 中用 Eval,而是在 Literal 中使用。 bind<asp:TextBox id="TextBox1" runat="server" Text='<%# Bind("CompanyName") %>'></asp:TextBox> 這種情況下,輸出 CompanyName 到客戶端后,用戶再提交,這個(gè)值還會(huì)返回給服務(wù)器端,并且對(duì)應(yīng)的 DataSource 會(huì)使用這個(gè)值,比如修改時(shí),它就會(huì)用這個(gè)值來作為修改后的值。 使用 bind 的時(shí)候,控件的 id 是必不可少的,起什么名字不重要,只要不重復(fù)就行了。 注意eval 和 bind 的很“嬌氣”,下面的用法都是錯(cuò)誤的: <asp:Button runat="server" Text='增加點(diǎn)內(nèi)容<%# Eval("Id") %>' /> <asp:Button runat="server" Text='刪除' OnClientClick='del(<%# Eval("Id") %>)' /> | 
|  |