Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 4084540
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 20, 20262026-05-20T18:27:11+00:00 2026-05-20T18:27:11+00:00

How should I format a path so it works with MVC routing in jQuery?

  • 0

How should I format a path so it works with MVC routing in jQuery? I’m returning Json, very similar to another SO post. Everything works great locally, but deployed it just bombs out. The query runs, but checking firebug it looks like the Success callback for jQuery.Get() doesn’t fire.

LATEST UPDATE
The only issue I have now is with special characters. Anytime I pass a “.” or “@” as part of the MVC route I get a 404. Removing these special characters also removes the error. You can see the Controller and Routing logic below.

Anytime I pass a ‘.’ as part of the URL it bombs. Whats up with the periods?

Queries are of the form
/Service/Index/{email} –

Broken E.G. /Service/Index/bmackey@foo.com (404)
Working E.G. /Service/Index/bmackeyfoocom (200)

Old stuff (for reference)

I tried "/Service/Index/email", "../Service/Index/email","../../Service/Index/email", but nothing is working.

    $email.blur(function ()
        {
            var email = $(this).val(); // grab the value in the input
            var url = '@Url.Action("Index", "Service")';    //this is calling MVC page, not normal aspx so I can't pass it as a query param (at least as far as I am aware)
            $.get(url + '/' + email.toString(), 

Update
I stopped hardcoding my URL. Local runs work perfectly. I still get a 404 error when I run on DEV server. The URL looks correct. I get a 404 error when I pass a string value, but if I change my parameter to an int I get a returned “null” (with quotes). This leads me to believe something is wrong with my Controller implementation or routing:

    public ActionResult Index(string email)
    {
        string emailAddress = email;

        GetActiveDirectoryInformation adInfo = new GetActiveDirectoryInformation();//calls entity framework
        Common_GetAdInfo_Result result = adInfo.Lookup(email: emailAddress);

        string jsonResponse = System.Web.Helpers.Json.Encode(result);           
        return Json(jsonResponse,JsonRequestBehavior.AllowGet);
    }

Global.asax

   public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapRoute(
                "Service",
                "Service/Index/{email}",
                new { controller = "Service", action = "Index", email = UrlParameter.Optional } // Parameter defaults
            );

            routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}/{id}", // URL with parameters
                new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
            );
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-20T18:27:12+00:00Added an answer on May 20, 2026 at 6:27 pm

    Never hardocde urls like this:

    var url = '/Service/Index/' + email.toString();
    

    Always use URL helpers when dealing with URLs:

    $email.blur(function () {
        var email = $(this).val(); // grab the value in the input
        var url = '@Url.Action("Index", "Service")';
        $.get(url, { id: email.toString() }, function(result) {
            // ...
        });
    });
    

    Url helpers will always generate correct urls no matter where your application is deployed.

    And if this is a separate javascript file in which you cannot use server side code you could always use HTML5 data-* attributes on your input field:

    @Html.TextBoxFor(x => x.Email, new { data_url = Url.Action("Index", "Service") })
    

    and then in your separate javascript file:

    $email.blur(function () {
        var email = $(this).val(); // grab the value in the input
        var url = $(this).data('url');
        $.get(url, { id: email.toString() }, function(result) {
            // ...
        });
    });
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm trying to use the jquery flot graphing plugin with asp.net mvc. I'm trying
I cannot os.chdir(path) in Python 2.6.5 under WindowsXP SP2. It works fine under CygWin
When an object has various formats (XML,CSV) it can be represented in, where should
Should I start with Django or JavaScript?
Should the folders in a solution match the namespace? In one of my teams
Should you set all the objects to null ( Nothing in VB.NET) once you
Should I still be using tables anyway? The table code I'd be replacing is:
Should I use Named Pipes, or .NET Remoting to communicate with a running process
Should you ever use protected member variables? What are the the advantages and what
Should developers avoid using continue in C# or its equivalent in other languages to

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.