2011-01-12 13 views
13

Chcę użyć poniższej kotwicy, aby przesłać formularz z jquery do Spring. Jak to się robi?Jak użyć znacznika zakotwiczenia do przesłania formularza z jquery

<a target="" title="" class="" href="">Save</a> 

Próbowałem tego, gdzie requestNew jest moja forma:

$(document).ready(function(){ 
    $("a").click(function(){ 
    $("#requestNew").submit(function(){ 
     $.post("../acctRequests", $("#requestNew").serialize()); 
     }); 
    }); 
}); 

Nie wydaje się, aby przejść w dowolnym miejscu.

Odpowiedz

20

Dodajesz nową procedurę obsługi zdarzeń; wszystko, co musisz zrobić, to wyzwolić istniejące i natywną funkcjonalność przeglądarki:

$(document).ready(function(){ 
    $("a").click(function(){ 
    $("#requestNew").submit(); 
    }); 
}); 
+0

To działa ... Dzięki za pomoc Ten – coder

4

Przypisanie handlarza przed kliknięciem. Następnie zadzwoń od kliknięcia.

$(document).ready(function(){ 
     // Binds the submit handler to the #requestNew form 
    $("#requestNew").submit(function(){ 
     $.post("../acctRequests", $("#requestNew").serialize()); 
    }); 
    $("a").click(function(e) { 
     $("#requestNew").submit(); // calls the submit handler 
     e.preventDefault(); // Prevents the default behavior of the link 
    }); 
}); 
+0

jest prawidłowy sposób. Odpowiedź Lonesomeway (zaakceptowana) nie działała z moją przeglądarką, ponieważ domyślne zachowanie tagu kotwicy nie było przesłonięte, przeładowanie strony, a następnie utrata danych postów. – eggmatters

0

jeśli dodać identyfikator do kotwicy można przesłać formularz w funkcji click:

<a target="" title="" class="" href="" id="saveButton">Save</a> 
$(document).ready(function(){ 
    $('#saveButton').click(function(){ 
    $("#requestNew").submit(); //if requestNew is the id of your form 
    }); 
}); 

Jeśli próbujesz złożyć go z AJAX, które jest inne rozwiązanie, ale nie jestem pewien, czy to, co chcesz w oparciu o swoje pytanie

6

Proszę używać tej

<a href="javascript:document.YOUR_FORM_NAME.submit()"> Submit</a> 

<form name="YOUR_FORM_NAME" action="YOUR_ACTION_PAGE_URL" method=POST> 
      <input type="text" name="YOUR_INPUT_NAME" value="YOUR_INPUT_VALUE"/> 
     </form> 

Wymień „Y OUR_ACTION_PAGE_URL”z docelowym adresem URL działania

4

HTML

<form...> 
    ... 
    <a data-role="submit">Save</a> 
</form> 

jQuery

$(function(){ 
    $("[data-role=submit]").click(function(){ 
     $(this).closest("form").submit(); 
    }); 
}); 
0

najprostszym sposobem jest taka:

<a href="#" onclick="submit()">Submit</a> 
Powiązane problemy