Autor Zpráva
Jack06
Profil
Dobrý večer, celkem by mě zajímalo, zda lze udělat nějak následující věc:

Mám na stránce teřba 10 formulářů uplně stejných se stejnými inputy, akorád hodnoty v inputech se mění.
Jde nějak udělat jeden post přez jquery, aby odeslal vždy jen ten form, ze kterého kliknu na submit? děkuji viz ukázka kódu:

nějak js, při jednom formuláři:
<script type="text/javascript">     	
    $(document).ready(function(){ 
    $("form. addtree").submit(function(){     
                            $.post("get.php",{   
                               lid:  $("input[name=lid]").val(), 
                               value:  $("input[name=value]").val(),  
                               direction: "e",
                               fceT: "add",}, function(data) {
                   }, 'json'); return false; 
       });
     });
</script>


html s více formuláři
<table>
<tr>
<td>Test 1</td> 
    <td> 
        <form class="addtree" action=""> 
        <input type="text" name="text 1"> 
        <input type="hidden" name="lid" value="1"> 
        <input type="submit" value="send"> 
        </form> 
    </td> 
</tr>
<tr><td>Test 2</td> 
    <td> 
        <form class="addtree" action=""> 
        <input type="text" name="text 2"> 
        <input type="hidden" name="lid" value="2"> 
        <input type="submit" value="send"> 
        </form> 
    </td> 
</tr>
<tr><td>Test 3</td> 
    <td> 
        <form class="addtree" action=""> 
        <input type="text" name="text 3"> 
        <input type="hidden" name="lid" value="3"> 
        <input type="submit" value="send"> 
        </form> 
    </td> 
</tr>
<tr><td>Test 4</td> 
    <td> 
        <form class="addtree" action=""> 
        <input type="text" name="text 4"> 
        <input type="hidden" name="lid" value="4"> 
        <input type="submit" value="send"> 
        </form> 
    </td> 
</tr>
</table>


Děkuji za rady
Kacko
Profil
Jack06:
Nenapisu hotove reseni, nemam cas, pokusim se vas nasmerovat.

$("form. addtree").each(){
$(this).submit(function(){  
...
...
// pak ziskat hodnotu z inputu - asi takto - nevim jestli bude fungovat
$(this."input[name=lid]").val();
// nebo mozna
$(this).find("input[name=lid]").val();
Jack06
Profil
Kacko:
Mockrát díky..

řešení:
<script type="text/javascript">     	
  $(document).ready(function(){ 
    $("form.addtree").each( function(){
      $(this).submit(function(){      
                            $.post("getTree.php",{   
                               lid: $(this).find("input[name=lid]").val(),
                               value:  $(this).find("input[name=value]").val(),  
                               direction: "e",
                               fceT: "addTree",}, function(data) {
                               location.reload();
                   }, 'json'); return false; 
      });
    });
  });
</script>
Jack06
Profil
Kacko:
ještě dotaz, když tím postem pošlu dotaz na soubor a soubor pak po provedení úkonu pomocí print napíše nějakou hlášku, jak to mám vypsat při odezvě, co tam bylo napsané? Jak vypsat obsah toho co se mi vrátí po postu?
Kacko
Profil
Jack06:
Vystup mate v promenne
data
.

$.post("getTree.php",{   
                               lid: $(this).find("input[name=lid]").val(),
                               value:  $(this).find("input[name=value]").val(),  
                               direction: "e",
                               fceT: "addTree",}, function(data) {
                               
                               // Zde
                               alert(data);
                               
                               // Touto akci IMHO cely JQuery script pozbyva smyslu
                               location.reload();
                   }, 'json');

To jak vystup zpracujete je jen na vas.
Jack06
Profil
Kacko:
Ten location reload jsem tam měl zatím jen, abych viděl zda se změny provedly opravdu jak měli a nemusel jsem reloadovat stránku ručně.

Celkem by se hodilo ještě něco, co by refreshovalo jen část obsahu stránky třeba div, ve kterém je php funkce :-D
Kacko
Profil
Jack06:
Celkem by se hodilo ještě něco, co by refreshovalo jen část obsahu stránky třeba div, ve kterém je php funkce :-D
Projdete si JQuery pluginy, mozna tam neco bude.

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: