I personally would go with the extension of the second option and create a separate .js file. The reason is that if you delegate the work to a third party to take care of the jQuery / javascript parts of the user interface, then they should not have any signs of backend functionality.
There are many ways to use the html5 attributes (i.e. data-attribute = 'foo') on the inputs, which will allow you to "decorate" your inputs with a load of properties that can be analyzed inside an external .js file.
A very brief example:
In your opinion:
<input type='text' id='myId' data-action='@Url.Action("MyAction")' class='myClass' />
in your .js file:
var targetAction = $('#myId').attr('data-action');
this gives a complete separation between .js and views. Of course, this requires a certain degree of planning.
Hope this helps
source share