1. DataTable的深拷貝及淺拷貝
假設已知一個DataTable對象table。
DataTable copyDataTable; copyDataTable = table.Copy();//深拷貝,複製該DataTable的結構和資料。 copyDataTable = table;//淺拷貝,複製的是引用。
2. DataTable的去重複
假設已知一個DataTable對象table。它有三列,分別為:column1,column2,column3。且該DataTable的資料不是從資料庫中擷取的。那麼,怎麼去除該DataTable中重複的資料呢?
方法如下:
DataView dataView = new DataView(table); DataTable dataTable = dataView.ToTable(true, new string[] { "column1", "column2", "column3" });
3. 擷取已設定成readonly的伺服器控制項的Text值
以TextBox為例,例如:<asp:TextBox ID="txtInfo" runat="server" ReadOnly="true"></asp:TextBox>,雖然可以通過JS對該控制項賦值,但是在頁面的.CS檔案txtInfo.Text的值始終為空白字串。
解決辦法:
不使用伺服器控制項的ReadOnly屬性來實現,而是在Page_Load中使用txtInfo.Attributes["readonly"] = "true";實現readonly,再使用txtInfo.Text就能擷取到Text的值。
4. 如何?頁面載入時的變黑效果
方法1:使用jQuery的blockUI Plugin。
方法2:使用如下HTML,然後結合JS控制其顯示。
HTML+CSS實現該效果的代碼:
<div id="fadeDiv" style="z-index: 100; position: absolute; display: none; width: 100%; height: 1000px; background-color: #0060C0; filter: alpha(opacity=20); text-align: center;"> <img src="http://www.cnblogs.com/resources/images/default/blue-loading.gif" /></div>
JS方法:
document.getElementById("fadeDiv").style.display = "block";//顯示 document.getElementById("fadeDiv").style.display = "none";//隱藏
5. 擷取下拉框(Select)選中的值(value和text) select伺服器控制項:
<select id="Select1" runat="server">
<option value="1" selected="selected">一</option>
<option value="2">二</option>
</select>
C#方法:
string strValue = Select1.Value;//值為"1"(即value值)string strText = Select1.Items[Select1.SelectedIndex].ToString();//值為"一"(即text值)
JS方法:
var selectObj=document.getElementById("Select1"); var strValue= selectObj.value;//值為"1"(即value值)var strText=selectObj.options(selectObj.selectedIndex).text;//值為"一"(即text值)
jQuery方法:
$("#Select1").val();//值為"1"(即value值)$("#Select1 option:selected").val();//值為"1"(即value值)$("#Select1>option:selected").get(0).text;//值為"一"(即text值)