[ duchess @ 25.12.2008. 20:52 ] @
Napravila sam jednu formicu sa javascriptom koja klikom na link DODAJ JOS POLJA dodaje jos polja u htmlu sa textarea. Problem je kada korisnik ukuca nesto u taj textarea i klikne na submit, sa strane php-a ne mogu da pokupim ukucanu vrednost iz tih novododatih textarea. Evo i konkretno...

kod forme:


Code:

<form>
<table>
<tr>
      <td>1. Polje</td>
</tr>                           
<tr>
      <td><textarea name="1t" cols="20" rows="8"><? echo $neka_vrednost; ?></textarea></td>
</tr>
<tr>
       <td>
       <input type="hidden" value="1" id="theValue" />                                
    <div id="myDiv"> </div>
       <p><a href="javascript:;" onclick="addElement();">Dodaj jos polja</a></p>
       </td>
</tr>
</table>
</form>


u javascriptu:

Code:

<script language="javascript" type="text/javascript">
function addElement() {
  var ni = document.getElementById('myDiv');
  var numi = document.getElementById('theValue');
  var num = (document.getElementById('theValue').value -1)+ 2;
  numi.value = num;
  
  var newdiv = document.createElement('div');
  
  var divIdName = 'my'+num+'Div';
  
  newdiv.setAttribute('id',divIdName);
  
 
  
  newdiv.innerHTML = '<table width="100%"><tr><td>'+num+'. Pitanje</td></tr><tr><td><textarea name="'+num+'t" cols="20" rows="8"></textarea></td></tr></table>';
  ni.appendChild(newdiv);
}
</script>


a nakon submita u php se odradjuje ovaj kod:

Code:

$polje="";
                
    $p=1;
    while($p<20)
    {
        //name atribout textarea
                $polj=$p."t"; 
        
                    
        $polj_=$_POST[$polj];
        
                    
        if($polj_)
        {
            echo $polj_;
        }

                    
        $p++;
    }


kao povratnu vrednost dobijem vrednost samo teksta ukucanog u prvi textarea. Znaci sve one koje dodam preko tog javascripta ne prepoznaje preko $_POST-a.
Kako da namestim da kupi podatke i iz tih textarea??
Plus da li je ikako moguce da kad korisnik klikne na submit i njegov zahtev se ne prosledi do kraja, zbog neke greske npr. nije ubacio text u neko polje, da se ne izgube ti novododati textareas nego da ostanu, sa tekstom koji je korisnik prethodno ukucao?

Please help me I'm a newbe in JS. :(
[ duchess @ 25.12.2008. 21:00 ] @
ISPRAVKA:
Neverovatno ali istinito! Iskljucim browser, ponovo ukljucim i sad radi! bar to sa preuzimanje POST-a iz novododatih polja. Nesto se izbagovalo... svasta... Ali i dalje stoji pitanje kako da ukucani podaci, nakon submita, ostanu i dalje u okviru tih polja. U sustini te podatke mogu da dobijem iz promenljivih koje su i pokupile taj prvobitni POST, preko php-a znaci. Ali kako da te promenljive nakon POST-a ubacim u te odredjene textareas??
[ Nikola Poša @ 25.12.2008. 21:31 ] @
Submit-om se automatski i reset-uje forma (ako si na to mislila). Da bi ti podaci ostali ispisani u textarea, mogla bi da iskoristish AJAX. Pomocu njega bez reload-ovanja strane mozhesh da izvrshish neke promene na samoj strani. U tvom sluchaju, ti bi trebala nekom PHP skriptu da AJAX-om prosledish podatke iz forme (bilo GET ili POST metodom), a AJAX ce u pozadini da komunicira sa PHP-om koji mozhe na osnovu tih podataka da otshtampa neki rezultat, koji mozhe da bude vracen AJAX-u i da bude prikazan...