Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: NicNeviem 05. 09. 2014, 09:44:59

Název: Proměnná v Javascriptu
Přispěvatel: NicNeviem 05. 09. 2014, 09:44:59
Dobry den.

Kedze nic neviem potrebujem poradit. Skusal som v Javascripte vytvorit inser do textarray
Kód: [Vybrat]
<script type="text/javascript">
      function insertText(elemID, text)
      {
        var elem = document.getElementById(elemID);
        elem.innerHTML += text;
      }
     </script>

<input type="button" value="Insert some text" onclick="insertText('content', 'text');">

to funguje dobre. Ale potom som skusil pridat volbu select.

Kód: [Vybrat]
<script>
function myFunction() {
    var x = document.getElementById("Select").selectedIndex;   
    alert(document.getElementsByTagName("option")[x].value);
}
</script>
<select id="Select">
  <option value="a">A</option>
  <option value="o">O</option>
  <option value="p">P</option>
  <option value="b">B</option>
</select>

A teraz neviem ako dynamicky previest ten select za text v inpute .
Název: Re:Proměnná v Javascriptu
Přispěvatel: 3ugeene 05. 09. 2014, 10:15:33
Kód: [Vybrat]
<select id="Select" onchange="myFunction()">
  <option value="a">A</option>
  <option value="o">O</option>
  <option value="p">P</option>
  <option value="b">B</option>
</select>
Název: Re:Proměnná v Javascriptu
Přispěvatel: 3ugeene 05. 09. 2014, 10:16:48
jo jenze ty chces stejne asi neco jinyho, co...
Název: Re:Proměnná v Javascriptu
Přispěvatel: tdvorak 05. 09. 2014, 10:19:09
Pokud jde o ten text, který se zobrazuje v samotném selectu a ne jeho value, pak třeba

Kód: [Vybrat]
alert(document.getElementsByTagName("option")[x].text);
http://stackoverflow.com/questions/5069294/get-inner-html-of-the-selected-option
Název: Re:Proměnná v Javascriptu
Přispěvatel: NicNeviem 05. 09. 2014, 11:43:49
V tom selekte sa mi zobrazuje to je ok ale ja by som ho po treboval by sa zobazoval v
Kód: [Vybrat]
<input type="button" value="Insert some text" onclick="insertText('content', 'text');">namiesto toho textu to mi torsku nejde. Proste to co vyberiem vselekte aby sa pouzilo v inpute ako text pretoze ten input ide potom vlozit do textu.
Název: Re:Proměnná v Javascriptu
Přispěvatel: JáNěcovím 05. 09. 2014, 12:22:09
Nevim, jestli jsem to dobře pochopil...
http://jsfiddle.net/62h41np8/
Název: Re:Proměnná v Javascriptu
Přispěvatel: haha 05. 09. 2014, 14:34:18
JáNěcovím: Skoro. Akorát že document.getElementsByTagName("option") ti při nejbližší příležitosti skript rozbije a u inputu/textarea bych místo innerHTML použil spíš vlastnost value. Takže spíš nějak takhle (http://codepen.io/anon/pen/qcida).
Název: Re:Proměnná v Javascriptu
Přispěvatel: bhole1 09. 09. 2014, 12:43:03
No skusil som asi 30 variacii ale nefunguje mi to dobre
Kód: [Vybrat]
<script type="text/javascript">
 function myFunction(e) {
    document.getElementById("text").innerHTML = document.getElementsByTagName("option")[e.selectedIndex].value;
   
    var elemreturn =  document.getElementById("text").innerHTML = document.getElementsByTagName("option")[e.selectedIndex].value;
    }
 
 function insertText(elemID)
      {
        var elem = document.getElementById(elemID);
        elem.innerHTML += elemreturn;
      }
</script>

toto vyberie co potrebujem a funkcia insertText by mala po kliku vlozit text
Kód: [Vybrat]
<div class="form-group <?php echo $this->element->content->getId();?>">

// sem by sa to malo vlozit
<?php echo $this->element->content;?>
</div>
 
<button data-toggle="dropdown" class="btn btn-default dropdown-toggle">

<span class="current-privacy-level"><?php echo $this->translate('citimsa select');?></span>
<select id="Select" onchange="myFunction(this)">
  <option value="a">A</option>
  <option value="o">O</option>
  <option value="p">P</option>
  <option value="b">B</option>
</select>
</button>

<input type="button" value="Insert some text" onclick="insertText('content');">
 
neviem ale ako v js dostat tu aktalnu select do toho textoveho pola
Název: Re:Proměnná v Javascriptu
Přispěvatel: k1k1n 09. 09. 2014, 16:47:44
tak nejak?

http://jsfiddle.net/62h41np8/5/
Název: Re:Proměnná v Javascriptu
Přispěvatel: bhole1 09. 09. 2014, 18:01:37
Dakujem presne to som pouzil. Funguje to skvelo. Problemje ze neviem ako to cez js napchat do

Kód: [Vybrat]
<div class="form-group <?php echo $this->element->content->getId();?>">

// sem by sa to malo vlozit
<?php echo $this->element->content;?>
</div>

este doplnim ze je to v ZendeFramework
Název: Re:Proměnná v Javascriptu
Přispěvatel: k1k1n 10. 09. 2014, 00:49:34
zend neznám, ale když budeš znát id toho divu, tak je kód úplně stejný...
Název: Re:Proměnná v Javascriptu
Přispěvatel: bhole1 14. 09. 2014, 00:30:49
Ok nakoniec som to poriesil takto

Kód: [Vybrat]
<script type="text/javascript">
function changeText2(){
var userInput = document.getElementById('userInput').value;
document.getElementById('content').innerHTML = userInput;
}
</script>


<input type='button' onclick='changeText2()' value='insert'/>

Funguje to skvelo ale problem je ten ze to vlozi text len raz a nevie vlozit uz do existujucoho textu.
Ma niekto ideu ako na to ?
Název: Re:Proměnná v Javascriptu
Přispěvatel: bhole1 14. 09. 2014, 15:19:14
Takze finalne riesenie

Kód: [Vybrat]
function changeText2() {
var newtext = document.getElementById('userInput').value;

document.getElementById('content').value += newtext;
}

Dakujem za pomoc