Problème d’URL de publication

la programmation


salut, j’ai ce code et ce code ne fonctionne pas correctement
code dans un.aspx

<asp:HiddenField runat="server" ID="hfDistrict" Value='<%# Eval("District")%>' />
<asp:HiddenField runat="server" ID="hfDistCode" Value='<%# Eval("DistCode") %>' />
<asp:LinkButton runat="server" ID="btn_NoOfA"  PostBackUrl="~/AcData.aspx" Text='<%# Eval("NoOfCount") %>' />

Code dans AcData.aspx

string k = ((HiddenField)PreviousPage.FindControl("hfDistrict")).Value;

essaie aussi ce code

string DistrictN1 = Request.Form["hfDistrict"]

mais je n’ai pas obtenu la valeur de la page précédente
en fait, nous devons supprimer la chaîne de requête de l’ancien code et ne voulons pas utiliser de session et nous essayons d’utiliser postbackurl pour transmettre la valeur de one.aspx à AcData.aspx.
quel est le problème exact que je faisais et quelle sera la solution. s’il vous plaît fournir une solution, merci et salutations

Ce que j’ai essayé :

code dans un.aspx

<pre><asp:HiddenField runat="server" ID="hfDistrict" Value='<%# Eval("District")%>' />
<asp:HiddenField runat="server" ID="hfDistCode" Value='<%# Eval("DistCode") %>' />
<asp:LinkButton runat="server" ID="btn_NoOfA"  PostBackUrl="~/AcData.aspx" Text='<%# Eval("NoOfCount") %>' />

Code dans AcData.aspx

string k = ((HiddenField)PreviousPage.FindControl("hfDistrict")).Value;

essaie aussi ce code

string DistrictN1 = Request.Form["hfDistrict"]

Solution 2

Vous avez déjà posté ceci sur le forum ASP.NET. Merci de ne pas republier.

Solution 1

Lisez la documentation de Postbackurl, elle contient des exemples sur la façon de lire les valeurs du formulaire

Propriété Button.PostBackUrl (System.Web.UI.WebControls) | Microsoft Docs[^]

Solution 3

Votre code pour accéder à la valeur de contrôle dans AcData.aspx la page doit être à l’intérieur du Page_Load événement:

C#
void Page_Load (object sender, System.EventArgs e)
{
   string k = ((HiddenField)PreviousPage.FindControl("hfDistrict")).Value;
}

Une autre option que vous pouvez essayer est d’utiliser Server.Transfer:

1. Supprimer PostBackUrl depuis LinkButton

2. Ajouter <asp:LinkButton OnClick="LinkButton1_Click" ... />

3. Dans votre code derrière , vous pouvez faire quelque chose comme ceci :

C#
protected void LinkButton1_Click(object sender, EventArgs e)
{
    Server.Transfer("~/AcData.aspx");

}

Vous pouvez ensuite accéder à la valeur dans la page de destination comme ceci :

C#
void Page_Load (object sender, System.EventArgs e)
{
HiddenField hid = (HiddenField)Page.PreviousPage.FindControl("hfDistrict");

if(hid != null)
      string key = hid.Value;

}

Pour plus d’informations, lisez : Publication sur plusieurs pages dans les formulaires Web ASP.NET

コメント

タイトルとURLをコピーしました