2010-10-19 6 views
0

Déchirer mes cheveux ici en essayant d'implémenter une forme assez simple dans une page .NET.Plusieurs formulaires de contact dans une page .NET

La forme ressemble à ceci:

<form action="http://domain.com/subscribe.tml" method="POST"> 
<p><input name="email" type="text" /></p> 
<p><input type="image" src="/images/ui/btn-getfreereport.gif" alt="Signup" /> </p> 
<input type="hidden" value="one_hello" name="confirm" /> 
<input type="hidden" value="F" name="showconfirm" /> 
</form> 

je me sens assez stupide parce que j'ai passé deux ans à essayer de comprendre comment faire cela. La seule chance que j'ai eu est d'utiliser Javascript, mais maintenant que je veux deux de ces formes, ce Javascript ne fonctionne pas. Laisser le code <form> semble fonctionner, sauf dans IE, où il ajoute une marge de ~ 200px sous le </form> (et en utilisant CSS pour supprimer la marge et le remplissage n'aide pas).

Je lis à propos de la classe HtmlForm, mais ne trouve pas d'exemples sur la façon d'envoyer des données pour le formulaire ci-dessus.

+0

Quelle est votre question réelle? – Kane

+0

Comment placer un

dans une page .NET. – Jon

Répondre

0

Dans .net, vous ne pouvez pas imbriquer des formulaires. Essayez de mettre votre formulaire en dehors des tags <form runat="server" >.

+0

Il me manque quelque chose alors ... comment placer les formulaires dans la page s'ils doivent être en dehors de la balise ? Voulez-vous dire que je ferme cette étiquette et que je la rouvre? – Jon

0

Vous pouvez avoir un formulaire dans la page asp.net et séparer plusieurs formulaires de contact (PAS L'ASP.NET FORM Element, je veux dire le terme général "Form") avec DIV ou PANEL.

Vous pouvez avoir chaque bouton "Envoyer/Enregistrer" pour chaque formulaire (je veux dire en général, pas formulaire asp.net) pour envoyer les informations de contact à quelqu'un ou l'enregistrer dans la base de données.

<body> 
<form id="form1" runat="server"> 
<div id="divContactForm1"> 
    <h1>My First form is here</h1> 
    Name <asp:TextBox ID="txtName" runat="server"></asp:TextBox> 
    <asp:Button ID="btnForm1" runat="server" Text="Save" onclick="btnForm1_Click" /> 
</div> 
<div id="divContactForm2"> 
    <h1>My Second form is here</h1> 
    Email 
    <asp:TextBox ID="txtEmail" runat="server"></asp:TextBox> 
    <asp:Button ID="btnForm2" runat="server" Text="Save" onclick="btnForm2_Click" /> 
</div> 
</form> 
</html> 

et dans le codebehind

protected void btnForm1_Click(object sender, EventArgs e) 
    { 
     //Read textbox value and do whatever you want 
    } 

    protected void btnForm2_Click(object sender, EventArgs e) 
    { 
     //Read textbox value here and do whatever you want 
    } 
+0

Pouvez-vous expliquer ce que vous voulez dire par les séparer avec div? – Jon

+0

@Jon: Réponse mise à jour avec l'exemple de code – Shyju

+0

Merci, mais cela n'utilise pas le code réel . J'ai besoin de poster plusieurs champs à une autre URL, ce qui est ma confusion. Je ne trouve rien qui explique clairement comment prendre un formulaire et l'afficher ailleurs (comme Paypal). Je pourrais juste utiliser l'API à la place. – Jon

Questions connexes