Obtenir la valeur d'un champ caché

J'ai un ASP.NET page avec trois champs cachés. (Juste on le ferait si je peux l'obtenir pour fonctionner. Il suffit de montrer que j'ai essayé plusieurs choses.)

<input type="hidden" id="hiddenSkillId1" runat="server" />
<input type="hidden" id="hiddenSkillId2" />
<asp:HiddenField ID="hiddenSkillId3" runat="server"/>    

Moi aussi j'ai une fonction JavaScript qui est appelé par un AJAXControlToolKit.AutoCompleteExtender.OnClientItemSelected événement:

<script type="text/javascript">
function SkillPartialMatchSelected(source, eventArgs ) {
    document.getElementById("ctl00_Content_hiddenSkillId1").Value = eventArgs.get_value();
    document.getElementById("hiddenSkillId2").Value = eventArgs.get_value();
    document.getElementById("ctl00_Content_hiddenSkillId3").Value = eventArgs.get_value();
}
</script>

À l'aide d'un point de rupture et d'inspecter les valeurs, j'ai confirmé que les vallées sont sur le côté Client.

Enfin j'ai le C# code-behind de la page qui est connecté à un LinkButton événement OnClick.

protected void AddSkillToProspect(object sender, EventArgs e)
{
   string selectedKey1 = Request.Form[hiddenSkillId1.ClientID];
   string selectedKey2 = Request.Form["hiddenSkillId2"];
   string selectedKey3 = Request.Form[hiddenSkillId3.ClientID];
   string selectedItem = SkillNameBox.Text.Trim();   
   ...
}

Tous les trois selectedKey valeurs sont nulles, mais selectedItem de la valeur de la ASP.NET Édition de Texte a une valeur.

De ce que j'ai lu, l'une de ces travaux. Ai-je raté quelque chose? Que puis-je faire pour obtenir la valeur d'une fonction JavaScript côté client vers le serveur?

Avez-vous vraiment besoin pour obtenir les valeurs sur Demande.Formulaire? Ne serait-ce pas trop de travail: string selectedKey1 = hiddenSkillId1; string selectedKey3 = hiddenSkillId3; //mais il ne fonctionne pas pour hiddenSkillId2 car il n'est pas runat=server.
Si je savais ce que je faisais, lol, oui. J'ai travaillé ancien héritage de 8 ans, tout à l'heure de l'apprentissage de web dev. J'ai essayé ce que vous avez suggéré sur la base de la réponse ci-dessous, n'a pas fonctionné. Il a couru bien, mais les données enregistrées sur le côté client ne voit pas sur le côté serveur.

OriginalL'auteur Steve Wash | 2012-07-26