Masalah url pos balik

pemrograman


hai, saya punya kode ini dan kode ini tidak berfungsi dengan benar
kode dalam one.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") %>' />

Kode di AcData.aspx

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

coba juga kode ini

string DistrictN1 = Request.Form["hfDistrict"]

tetapi saya tidak mendapatkan nilai dari halaman sebelumnya
sebenarnya kita perlu menghapus string kueri dari kode lama dan tidak ingin menggunakan sesi dan kami mencoba menggunakan postbackurl untuk meneruskan nilai dari one.aspx ke AcData.aspx.
apa sebenarnya masalah yang saya lakukan dan apa solusinya. tolong berikan solusinya, terima kasih dan hormat

Apa yang saya coba:

kode dalam one.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") %>' />

Kode di AcData.aspx

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

coba juga kode ini

string DistrictN1 = Request.Form["hfDistrict"]

Solusi 2

Anda sudah memposting ini di forum ASP.NET. Tolong jangan memposting ulang.

Solusi 1

Baca dokumentasi Postbackurl, yang berisi contoh cara membaca nilai formulir

Properti Button.PostBackUrl (System.Web.UI.WebControls) | Microsoft Dokumen[^]

Solusi 3

Kode Anda untuk mengakses nilai kontrol di AcData.aspx halaman harus berada di dalam Page_Load peristiwa:

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

Opsi lain yang bisa Anda coba adalah menggunakan Server.Transfer:

1. Hapus PostBackUrl dari LinkButton

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

3. Dalam kode di belakang , Anda dapat melakukan sesuatu seperti ini:

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

}

Anda kemudian dapat mengakses nilai di halaman tujuan seperti ini:

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

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

}

Untuk informasi lebih lanjut, baca: Posting Lintas Halaman dalam Formulir Web ASP.NET

コメント

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