Search code examples
jqueryhtmlspringdynamic-url

Building dynamic URL using 'a href'


I am using spring-3.2 version.

@RequestMapping("/company={companyId}/branch={branchId}/employee={employeeId}/info")

The requestmapping is used to map a URL, so in this case when ever a URL is called using

<a href="company=1/branch=1/employee=1/info" > employee info </a>

the method is called in the controller with the exact @RequestMapping annotation, now I want to create the "a href" tag dynamically and want to create companyId,branchId,or employeeId dynamically.


Solution

  • You could of course build the string pointing to the respective URL dynamically.

    A first option would be using a javascript function. However, even this function has to take the IDs from somewhere. In my example, I suppose that there are javascript variables which already contain the right IDs.

    function createDynamicURL()
    {
        //The variable to be returned
        var URL;
    
        //The variables containing the respective IDs
        var companyID=...
        var branchID=...
        var employeeID=...
    
        //Forming the variable to return    
        URL+="company=";
        URL+=companyID;
        URL+="/branch=";
        URL+=branchID;
        URL+="/employee=";
        URL+=employeeID;
        URL+="/info";
    
        return URL;
    }
    

    Then your html would be like:

    <a href="javascript:window.location=createDynamicURL();" > employee info </a>
    

    Another, more elegant solution would be to use the onClick event:

    <a href="#" onclick="RedirectURL();return false;" > employee info </a>
    

    with the function

    function RedirectURL()
    {
        window.location= createDynamicURL();
    }
    

    Hope I helped!