Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: Dacid 21. 05. 2011, 17:32:50

Název: Práce s textem v JavaScriptu
Přispěvatel: Dacid 21. 05. 2011, 17:32:50
Jak udělat v JavaScriptu nějaké textové pole do kterého když se zadá třeba kíchnout tak vypíše kýchnout, nebo nějaký jiný text.
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: DarkKnight 21. 05. 2011, 17:47:38
nechapu, co presne tim myslis

chces udelat, kdyz do html prvku textarea nebo jineho zapises nejaky text, tak aby ho to zmenilo na jiny?
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: Dacid 21. 05. 2011, 17:52:09
Bylo by to pole pro vložení textu, někdo by tam něco napsal a pod tím polem by se něco zobrazilo, ale bylo by určené že když napíše třeba Pat tak to vypíše Mat.
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: lukove 21. 05. 2011, 18:27:44
v javascripte su normalne premene, potom staci precitat vstup z text area cez odoslany formular (form) a vlozit tu premenu cez javascriptovsky document.write() skus si dat do googlu tieto pojmy  script,form,textarea,document.write
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: Dacid 21. 05. 2011, 18:31:59
Takže jak to bude vypadat?
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: blizz 21. 05. 2011, 18:45:46
V HTML dokumente si vytvor INPUT:

Kód: [Vybrat]
<input id="textove-pole" type="text" />
A v js:

Kód: [Vybrat]
var textovePole = $("#textove-pole");
textovePole.val("Nová hodnota");

Ak chceš vytvárať textové pole dynamicky (priamo v JS):

Kód: [Vybrat]
var placeholder = $("body");
var textovePole = $("<input>",
{
    type: "text",
    val: "Textová hodnota"
});
placeholder.append(textovePole);
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: Dacid 21. 05. 2011, 19:22:45
A kde je v kódu něco jako:
Text=Výsledek
Pat=Mat
?
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: blizz 21. 05. 2011, 19:27:06
Kód: [Vybrat]
var vysledok = textovePole.val();
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: Dacid 21. 05. 2011, 19:47:44
Když tam zadám vysledok to nic nenapíše.
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: DarkKnight 21. 05. 2011, 20:56:37
to protoze blizzboz pouziva syntaxi jquery

tudiz jeste musis naimportovat jquery knihovnu
Kód: [Vybrat]
<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.1.min.js"></script>
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: Dacid 21. 05. 2011, 22:30:55
Aha a jak se to teda děla? Napiš prosím pár slov jako příkladů jako těch které když se tam napíšou tak to vypíše jiné.
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: DarkKnight 21. 05. 2011, 22:45:48
Dacid: no presne tak jak to napsal on,tady na ukazku kod

Kód: [Vybrat]
<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  $("#textove-pole").change(function(){
    $("#textove-pole").val("Nová hodnota");
  });
});
</script>

<input id="textove-pole" type="text" />
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: Dacid 21. 05. 2011, 22:57:06
To jako mění obsah té závorky $("#textove-pole").chang
za
(function(){
    $("#textove-pole").val("Nová hodnota");
?
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: buba 21. 05. 2011, 23:04:50
Pokud to chápu dobře, tak chceš udělat našeptávač. To není úplně triviální věc.

Kód: [Vybrat]
<input type="text" id="pole"/>
<div id="septac" style="display:none;"></div>

<script>
__value = "";
elm = document.getElementById("pole");
elm.onchange = function(){
var elm = document.getElementById("pole");
if( elm.value != __value ){
var septac = document.getElementById("septac");
// nejaky request na server nebo kontrola podle nejakeho slovniku
septac.innerHTML = vracena_hodnota;
septac.style.display = "";
__value = elm.value;
}
}
</script>

Pokud jsem to pochopil špatně, tak se omlouvám.
Jinak zkus guglit: js suggest
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: DarkKnight 21. 05. 2011, 23:43:50
ne

to zmeni obsah inputu s id(#) textove-pole za "Nová hodnota"


nicmene pokud chces udelat naseptavac, s tvoji znalosti je to temer nemozne
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: Dacid 22. 05. 2011, 00:27:09
Moc díky jede to a umí to vypsat třeba čas? Že bych tam zadal vypiš čas a vypsalo by to kolik je hodin. Co tam mám dát místo Nová hodnota?
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: blizz 22. 05. 2011, 10:06:21
Dacid: no presne tak jak to napsal on,tady na ukazku kod

Kód: [Vybrat]
<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  $("#textove-pole").change(function(){
    $("#textove-pole").val("Nová hodnota");
  });
});
</script>

<input id="textove-pole" type="text" />

jedna malá výkonnostná optimalizácia. nemá zmysel vytvárať 2 jquery objekty 2x, stačí vytvoriť jeden, priradiť ho do premennej a potom s ním ďalej pracovať.

Dacid: http://jqueryui.com/demos/autocomplete/
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: Dacid 22. 05. 2011, 12:36:11
aha, a nevíš jak tam zadat více informací, že bych změnil:
$("#textove-pole").change(function(ovladac){
    $("#textove-pole").val("televize");
za:
(ovladac) = ("televize")
(pes) = ("bouda")
(zoo) = ("zvirata")
(PC) = ("mys")
?
Název: Re: Práce s textem v JavaScriptu
Přispěvatel: DarkKnight 22. 05. 2011, 17:38:23
if, else if a else... zakladni veci u kazdeho programovaciho jazyka...

blizzboz: jasne, ale pro priklad to ma takhle leps