2013-04-17 5 views
1

Je souhaite utiliser une variable javascript dans les valeurs de route d'action MVC. Je l'ai référé Stackoverflow post et la réponse donnée fonctionne correctement.ASP.NET MVC 4 Html.Action avec variable JavaScript

Mais je ne veux pas écrire une fonction javascript supplémentaire pour y parvenir. Sans écrire de fonction supplémentaire, existe-t-il un autre moyen de le faire. Je voulais dire, y at-il une nouvelle fonctionnalité ajoutée dans MVC4 pour cela? Comme l'exemple dans ce lien est pour MVC 2.

self.EditUrl = ko.computed(function() { 
      return "@Url.Action(Actions.User_Update, Controllers.User, new { Id = self.Id() })"; 
     }); 

Répondre

2

Il est toujours le même cas avec MVC 4. Vous ne pouvez pas mélanger le code client et le code du serveur. Je ne pense pas que ce serait possible à l'avenir. Cela dit, ce que vous essayez de faire est réalisable. Vous pouvez toujours écrire l'url dans un champ caché:

<input type="hidden" id="userUpdateUrl" value="@Url.Action("User_Update","User")"/> 

ensuite utiliser sur votre côté client de liaison:

self.EditUrl = ko.computed(function() { 
    return $("#userUpdateUrl").val() + "?" + self.Id(); 
}); 
+0

+1 pour la réponse rapide et suggestion –

+0

Merci .. Je viens attendu pour d'autres réponse ... –

+0

De rien. –