Autor Zpráva
bezradny
Profil *
Ahoj. Jak mám udělat, když chci aby po kliknutí na <a href='index.php?page=profil&UserID=10'> přenesla ta desítka do inputu?? nějak si s tím nevím rady... řešil jsem to v php pomocí postu, ale to se pokaždé celá stránka musí refreshovat a to nechci. děkuji.
Kubo2
Profil
To, co chceš udělat, v JavaScriptu, pokud vím, nejde. Dalo by se to teoreticky udělat pomocí OnDocumentReady(this.Value = UserID);, no nevím jestli tam fungují superglobální proměnné. A proto navrhuji rovnou poslat ze serveru výsledek:
<?php
// zjistim si id predané v adrese
$userId = $_GET['UserID'];
// vystavim podminku zobrazeni profilove stranky
if($_GET['page'] == 'profil')
  {
// a tu vypisem textovy input a do neho predanu hodnotu
echo $profil.'<input name="user_id" Value="'.$userId.'">'.$shrnuti;
endif;
  };
// posle se to na vystup
?>
No já myslím, že Tvůj problém je vyřešen, ale jak se ti něco nebude zdát, napiš.


Kromě toho netřeba nic refrešovat, jak jsi vravel.
Jan Tvrdík
Profil
bezradny:
Nehledáš náhodou něco takového?

<a href="#" onclick="document.getElementById('policko').value = 10; return false;">Nastav desítku</a>
<input type="text" id="policko">
Kubo2
Profil
Napadlo mě, že by sis měl ještě nejdřív to id zjistit z db nebo ktovíodkud, no to už nechám na tebe.


Jan Tvrdík:
Já nevěřím, že bezradny by tam chtěl jenom tu desítku. Pravděpodobně chce id usera a to by se udělalo takhle.
Someone
Profil
[#2] Kubo2 když používáš if se složenými závorkami, tak je endif zbytečný.
Kubo2
Profil
Someone:
To mě nenapadlo, díki.
Someone
Profil
A já myslím, že chce obojí:
if (isset($_GET['page']) and is_numeric($_GET['UserId'])) {
     echo '
        <a href="#" onclick="document.getElementById(\'policko\').value = '.$_GET['UserId'].'; return false;">Nastav ID</a>
        <input type="text" id="policko">
    ';
}
Jan Tvrdík
Profil
Someone:
Líbí se mi, jak se tady vymýšlí různá řešení, protože si nikdo není jist, co vlastně bezradny chce :)
Someone
Profil
Jan Tvrdík:
Aspoň si má z čeho vybrat :)
Kubo2
Profil
Someone:
To tedy má :]

No mně se líbí jak si to přesně do seba zapasoval

Ozaj a proč ten input nemá name?
Someone
Profil
Kubo2:
Netuším, použil jsem kód Jana Tvrdíka, ale pokud bych měl hádat, tak to bude tím, že tam Jan Tvrdík uváděl jen věci potřebné k funkčnosti přenesení té hodnoty. K čemu to potřebuje dále už není tak jasné a pokud by to potřeboval odesílat tak si tam atribut name snad přidá sám :)
bezrady
Profil *
"Líbí se mi, jak se tady vymýšlí různá řešení, protože si nikdo není jist, co vlastně bezradny chce :)" ... lol rozesmál jsi mě, ale zároveň se omlouvám, ale vtipné to bylo. já teď musím otestovat ty kódy. to co chci je třeba ... třeba na xchatu když klikne na jméno uživatele tak se hned posune do inputu. Ale jste všichni strašně moc hodní. Děkuji. Otestuju ty kódy a řeknu co se děje.




<a href="#" onclick="document.getElementById('policko').value = 10; return false;">Nastav desítku</a>
<input type="text" id="policko">


Jan Tvrdík : Super ! To funguje jak má, ale má tva problémy. a) pokud už v tom inputu je něco napsané tak se to smaže a to je špatné... b) ten kurzor potom by měl skočit na konec řádku aby se za něj dalo hned psát.
Someone
Profil
bezrady:
a) místo = použij +=
b) přidej document.getElementById('policko').focus();
Kubo2
Profil
Já bych se ještě zeptal, jak to funguje, že když je označený nějaký text, tak se ten text přenese do inputu, resp. textarei.
Rfilip
Profil
Koukni se na http://www.codetoad.com/javascript_get_selected_text.asp
bezrady
Profil *

to += funguje, ale s tim .focus();  je nějaký problém... když udělám :

<a href="#" onclick+= "document.getElementById('policko').focus(); .value = 10; return false;">Nastav desítku</a> tak to nepřenáší to value, ale hází to kurzor na konec řádku.
<a href="#" onclick+= "document.getElementById('policko');.focus(); .value = 10; return false;">Nastav desítku</a>  takhle hádám je to uplně špatně protože to vůbec nefunguje.
<a href="#" onclick+= "document.getElementById('policko').focus() onclick+= "document.getElementById('policko').focus(); .value = 10; return false;">Nastav desítku</a> 
tohle taky nefunguje vůbec.
Someone
Profil
document.getElementById('policko').value = 10;
document.getElementById('policko').focus();
bezrady
Profil *
mg


Děkuji

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: