Comment appeler la méthode dans le bouton de l'événement onclick mvc4?
J'ai une méthode à l'Intérieur de Rasoir vue.
<div style="height: 50px; padding-left: 10%; width: 100%">
<b style="font-family: Arial, Helvetica, sans-serif; font-weight: normal; font-size: xx-large">
@functions {
public string schoolname()
{
if (Request.IsAuthenticated && !User.IsInRole("SuperAdmin"))
{
string currentUserName = User.Identity.Name;
return GetHeaderSchoolName(currentUserName);
}
return string.Empty;
}
public string GetHeaderSchoolName(string userName)
{
Guid userId = SchoolBreifcase.Utilities.Common.GetUserId(userName);
SchoolBreifcase.Repositories.AdminRepository adminRepository = new SchoolBreifcase.Repositories.AdminRepository();
SchoolBreifcase.Models.Edmx.UserProfile userProfile = adminRepository.GetUserProfileByUserId(userId);
string CurrentSchoolName = userProfile.School.SchoolName;
return CurrentSchoolName + "xxx";
}
}
</div>
J'ai un bouton à l'intérieur de la même rasoir vue.Et j'ai appelé cette méthode(schoolname()
) dans mon bouton ci-dessous événement onclick (onclick="schoolname()"
) s'il vous plaît voir ci-dessous
<div class="logoHeader" style="float: right; width: 15%; padding-top: 5%;">
**<button onclick="schoolname()"> xx</button>**
</div>
Mais .Sa ne fonctionne Pas . Ma méthode n'est pas appelée .Je n'ai aucune idée pour cette tâche . Vous avez une idée ici? et comment résoudre ce problème ?
Updated:
Je sais que la procédure sont jeté contrôleur ,action résultat,get ,post, java script,jquery,etc ,tous . Ma question est qu'est-Ce que l'utilisation de @functions
? en rasoir vue . Je sais que sa peut les aider à rédiger côté serveur de code à l'intérieur de rasoir vue . mais je ne peux pas appeler cette méthode à un seul bouton, cliquez sur l'événement . Quel est donc l'utiliser ? Son utilisé uniquement pour lors du chargement de la page .
Fini mon auto :
Voir ci-dessous mon Rasoir Vue de la Fonction :
<div style="height: 50px; padding-left: 10%; width: 100%">
<b style="font-family: Arial, Helvetica, sans-serif; font-weight: normal; font-size: xx-large">
@functions {
public string schoolname()
{
if (Request.IsAuthenticated && !User.IsInRole("SuperAdmin"))
{
string currentUserName = User.Identity.Name;
return GetHeaderSchoolName(currentUserName);
}
return string.Empty;
}
public string GetHeaderSchoolName(string userName)
{
Guid userId = SchoolBreifcase.Utilities.Common.GetUserId(userName);
SchoolBreifcase.Repositories.AdminRepository adminRepository = new SchoolBreifcase.Repositories.AdminRepository();
SchoolBreifcase.Models.Edmx.UserProfile userProfile = adminRepository.GetUserProfileByUserId(userId);
string CurrentSchoolName = userProfile.School.SchoolName;
return CurrentSchoolName + "xxx";
}
}
</div>
Et je suis habitué javascript:window.location.href="schoolname"
pour un appel de ma fonction .Son travail maintenant .
<div class="logoHeader" style="float: right; width: 15%; padding-top: 5%;">
**<button onclick='javascript:window.location.href="schoolname"'> xx</button>**
</div>
Merci les Gars .
- MVC est pas WebForms. Ils sont assez différents et ne partagent pas beaucoup en commun. C'est une manière complètement différente de la connexion client/serveur de côté les méthodes. Je recommanderais certainement lu le
getting started
guide sur asp.net asp.net/mvc/overview/getting-started - De pouce à la règle: toujours regarder votre code html généré et demandez-vous: si j'étais un navigateur, où est cette fonction que je suis appelé à invoquer? Ne pouvez pas le voir? Ensuite, il ne fonctionnera pas.
- Donc je ne peux pas appeler cette fonction dans mon événement clic du bouton . droit ?
- Pas de. Il doit être relié au serveur en quelque sorte. Merci de regarder des vidéos ou lire des tutoriels. MVC est un animal différent, et facile à se confondre.
- hmm ok l'ami !!
- Je crois que je viens de lol serait et puis vu the Crying Game "douche scène".
- Hmm!! Êtes-vous enfant de moi ?
- Fini moi-même utilisé : stackoverflow.com/q/16097853/2291535
- Pensez Webforms , Écrire MVC.
Vous devez vous connecter pour publier un commentaire.
Vous font, c'est complètement faux mon ami, parce Asp.net Mvc n'est pas comme classique Asp.net les Formulaires Web.
Je vous suggère de jeter un regard à ce livre pour plus d'informations.
Toutefois, afin de résoudre votre problème, vous pouvez facilement le faire en CShtml :