Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Pass a jquery variable to @Url.Action MVC3

How can I pass my client side variable to controller using Url.Action.

I am trying to do like this, but it's not working

location.href = '@Url.Action("printtopdf","batch",new {allocationId=unSelected}))';

In the above line 'unSelected' is a client side variable and comma separated values.

like image 389
Naresh Avatar asked Nov 21 '25 13:11

Naresh


2 Answers

I think this will work for you. I find it a bit more cleaner and is an alternative option.

window.location = "/batch/printtopdf?allocationId=" + unSelected;

It stands for

window.location = "/yourControllerName/yourActionMethodName?QueryStringId=" + yourVariable;
like image 149
MVCKarl Avatar answered Nov 23 '25 15:11

MVCKarl


@Url.Action creates the link on the server, but unSelected only exists on the client. What you would need to do is append the unSelected querystring to the generated link.

location.href = '@Url.Action("printtopdf","batch",new {}))' + '?allocationId=' + unSelected;

Edit:

The way I'm creating the link assumes that the link will not have any other queryString parameter, otherwise, you'll need to conver the '?' to '&'

like image 24
Cloud SME Avatar answered Nov 23 '25 16:11

Cloud SME