Using ASP.NET C# and Javascript

Posted by ctck on Programmers See other posts from Programmers or by ctck
Published on 2011-11-29T17:23:01Z Indexed on 2011/11/29 18:02 UTC
Read the original article Hit count: 417

Filed under:
|
|
|
|

I'm looking for the most efficient / standardized way of passing data between client javascript code and C# code behind in an ASP.NET application. Currently ive been using the following methods to achieve this but they all feel a bit like a fudge.

The way i pass data from javascript to the C# code behind is by setting hidden asp variables and triggering a postback

<asp:HiddenField ID="RandomList" runat="server" />

function SetDataField(data) {
      document.getElementById('<%=RandomList.ClientID%>').value = data;
}

Then in C# code i collect the list

protected void GetData(object sender, EventArgs e)
{
      var _list = RandomList.value;
}

Going back the other way i often use either scriptmanager to register a function and pass it data during Page_Load:

ScriptManager.RegisterStartupScript(this.GetType(), "Set","get("Test();",true);

or i add attributes to controls before a post back or during Initialization / pre rendering stages:

Btn.Attributes.Add("onclick", "DisplayMessage("Hello");");

These methods have served me well and do the job. However they just dont feel complete. Is there a more standardized way of passing data between client side markup / javascript and backend code.

Ive seen some posts like this one: Injecting JavaScrip : StackOverflow that describe HtmlElement class. Is this something is should look into?

Thanks everyone for your time.

© Programmers or respective owner

Related posts about web-development

Related posts about c#