How to encode a URL in jQuery/JavaScript and decode in ASP.NET

16,109

Solution 1

Use encodeURIComponent(str) in JavaScript for encoding and use HttpUtility.UrlDecode to decode a URL in ASP.NET.

In JavaScript:

var url = "mynewpage.aspx?id="+encodeURIComponent(idvalue);
$(location).attr('href', url);

And in ASP.NET

_string _id = HttpUtility.UrlDecode(Request.QueryString["id"]);

Solution 2

I've always found this site wonderfully useful for figuring out which encoding I should be using (probably encodeURI or encodeURIComponent). You should be able to find what you want to use there.

I'm not as familiar with the ASP.NET side of things. These guys probably already have a great answer for you.

Share:
16,109
Nick Kahn
Author by

Nick Kahn

Updated on June 04, 2022

Comments

  • Nick Kahn
    Nick Kahn almost 2 years

    How do you safely encode a URL using JavaScript such that it can be put into a GET string?

    Here is what I am doing in jQuery:

    var url = "mynewpage.aspx?id=1234";
    $(location).attr('href', url);
    

    And in the ASP.NET page_load, I am reading this:

    _string _id = Request.QueryString["id"].ToString();
    

    How can I encode the id in jQuery/JavaScript and decode in ASP.NET (C#)?