Hej, powiedzmy ze jestem na stronie:
mojestrona.pl/tutaj.aspx?id=5
i teraz chciał bym isc do strony
mojestrona.pl/tam.aspx?id=5
to jak wygląda link
<a href="tam.aspx?id=[i co tutaj ma byc]">wejscie</a>
Hej, powiedzmy ze jestem na stronie:
mojestrona.pl/tutaj.aspx?id=5
i teraz chciał bym isc do strony
mojestrona.pl/tam.aspx?id=5
to jak wygląda link
<a href="tam.aspx?id=[i co tutaj ma byc]">wejscie</a>
Request["id"] pobiera wartosc parametru id niezaleznie czy przyszedl przez get czy post
Request.QueryString["id"] z get
Request.Form["id"] z post
pobrac i dokleic we wlasciwe miejsce (to wiesz jak zrobic?)
No właśnie chodziło mi o tą drugą częśc,
gdzies znalazłem że Request.QueryString["id"] daje taka wartosc
ale to było w kodzie cs a mi chodzi o wstawienie bezpośrednio w aspx
jest kilka mozliwosci:
lub
b)
xhtml: ...
c#: mojeA.HRef = string.Format(mojeA.HRef, Request["id"]);
w kodzie xhtml mozesz wstawic kod .net <% ... %>
w twoim przypadku <a href="inna_strona.aspx?id=<%=Request["id"]%>">....</a>
zamiast anchor w xhtml miec kontrolke literal (nie label, bo ona produkuje niepotrzebnie xhtml'owy tag span) i w code behind do literal do walsciwosci Text ladowac caly anchor
literal1.Text = "<a href="inna_strona.aspx?id=" + Request["id"] + "">...</a>";
pewnie jeszcze kilka wariantow mozna wymyslic :)
moja propozycja to 1b - nie mieszasz kodu ze zrodlem strony oraz mozesz bez pozniejszego przekompilowywania zmienic link, np dodac kolejny parametr staly (href="inna_srona.aspx?id={0}&x=1")
OK dzięki za obszerna odpowiedź
A jak się dostac do dwóch src w poniższym kodzie:
[code]
<object id="MediaPlayer" width="420" height="236" classid="CLSID:22D6f312-B0F6-11D0-94AB-0080C74C7E95" standby="Loading
Windows Media Player components..." type="application/x-oleobject" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112">
<embed type="application/x-mplayer2" src="Video/{0}" name="MediaPlayer" width="420" height="236"></embed>
</object>
[/code]
uczywiscie mam na mysli z poziomu kodu cs
kazdy z tych tagow mozesz oznaczyc jako runat="server" tylko musisz kazdemu nadac unikalne id i pewnie param powinien byc wtedy domkniety <param ... />
w code behind bedziesz mogl odwolac sie do tych obiektow przez id, pewnie .net nie biedzie umial ich na konkretne kontrolki przetworzyc, zdaje sie ze beda winialy jako typ HtmlGenericControl (chyba jakos tak, juz troche nie uzywalem asp .net), ale taka kontrolka tez ma kolekcje Attributes dzieki ktorej bedziesz mogl manipulowac atrybutem src
html:
<object id="MediaPlayer" width="420" height="236" classid="CLSID:22D6f312-B0F6-11D0-94AB-0080C74C7E95" standby="Loading Windows Media Player components..." type="application/x-oleobject" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112">
<param runat="server" id="filename1" name="filename" value="Video/{0}" /><param name="Showcontrols" value="True"> <param name="autoStart" value="False"><embed runat="server" id="MediaPlayer1" type="application/x-mplayer2" src="Video/{0}" name="MediaPlayer" width="420" height="236"></embed>
</object>
code behind:
MediaPlayer1.Attributes["src"] = string.Format(MediaPlayer1.Attributes["src"], "plik1.wmv");