Я шукаю найбільш ефективний / стандартний спосіб передачі даних між кодом JavaScript на стороні клієнта та кодом C # за програмою ASP.NET. Я використовую наступні методи, щоб досягти цього, але всі вони відчувають трохи неприємності.
Передавати дані з JavaScript у код C # - це шляхом встановлення прихованих змінних ASP та запуску післязавантаження:
<asp:HiddenField ID="RandomList" runat="server" />
function SetDataField(data) {
document.getElementById('<%=RandomList.ClientID%>').value = data;
}
Потім у коді C # я збираю список:
protected void GetData(object sender, EventArgs e)
{
var _list = RandomList.value;
}
Повертаючись назад, я часто використовую або ScriptManager для реєстрації функції та передачі її даних під час Page_Load:
ScriptManager.RegisterStartupScript(this.GetType(), "Set","get("Test();",true);
або я додаю атрибути до елементів керування перед публікацією назад або під час етапів ініціалізації чи попереднього надання:
Btn.Attributes.Add("onclick", "DisplayMessage("Hello");");
Ці методи мені добре служили і виконують роботу, але вони просто не відчувають себе повною. Чи існує більш стандартний спосіб передачі даних між стороною клієнта JavaScript та зворотним кодом C #?
Я бачив деякі повідомлення , як цей , які описують HTMLElement класу; це щось, на що я повинен звернути увагу?