[英]How to use client-side validation to work on your asp.net mvc in c#?
[英]asp.net: (c# client-side) how to access html element created after page loads?
想象一下,
第1步:ASPX頁面加載。
第2步:按鈕觸發一個腳本,該腳本創建一個帶有id或class標記的html元素(div,span等),包括runat服務器屬性。
我的問題是,
最后一步: 從我的C#文件,如何訪問該元素並獲取它的內部html,所以我可以將它保存為字符串?
PS:我將使用該字符串將其保存在我的mssql數據庫中。
如果不對服務器執行完全回發,則無法創建“真實”的runat = server元素/控件。
最好的方法可能是在提交頁面之前編寫一些將innerHTML存儲到ASP.Net隱藏字段的腳本。 然后,您可以訪問此隱藏字段的值以獲取數據。
如果您想動態創建多個對象,則需要使用標准的html隱藏輸入字段,因為您無法通過javascript創建asp.net服務器控件。
<input type="hidden" name="fieldData_1" value="control 1 html content">
<input type="hidden" name="fieldData_2" value="control 2 html content">
然后,您就可以從Request.Form對象訪問這些隱藏字段:
Request.Form["fieldData_1"]
知道了這一點,您現在可以迭代表單數據並處理所有動態字段
foreach (string fieldData in Request.Form)
{
if(fieldData.Contains("fieldData_"){
//process the data for each field
}
}
也可以避免一起使用隱藏字段,只需使用__doPostback('','')方法直接將數據傳遞給服務器。 這可以通過許多不同的方式實現,因此我將引用您http://dopostback.net來了解該方法的工作原理。
將runat="server"
屬性添加到標記以使其成為HTML Control,並且可以通過其ID從.cs文件訪問
我認為你需要將元素內部HTML發布回服務器。 我會做什么,在客戶端函數中,獲取新創建元素的內部HTML,將其存儲在隱藏字段中,然后調用__doPostBack('<hidden element id>', '');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.