2011-01-12 4 views
13

Я хочу использовать следующий якорь для отправки формы с jquery в Spring. Как это делается?Как использовать тег привязки для отправки формы с помощью jquery

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

Я попытался это, где requestNew моя форма:

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

Это не похоже, никуда идти.

ответ

20

Вы добавляете новый обработчик событий; все, что вам нужно сделать, это запустить существующие, а также встроенную функциональность браузера:

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

Это работает ... спасибо за помощь – coder

4

Назначить обработчик отправки за пределами щелчка. Затем назовите его нажатием.

$(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

Это это правильный путь. Ответ lonesomeway (принятый) не работал с моим браузером, поскольку поведение тега привязки по умолчанию не было переопределено, перезагружая страницу, а затем теряя почтовые данные. – eggmatters

0

если добавить идентификатор к вашему якорю вы можете отправить форму в функции мыши:

<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 
    }); 
}); 

Если вы пытаетесь представить его с помощью AJAX, что это другое решение, но я не уверен, что это то, что вы хотите, основанный на ваш вопрос

6

Пожалуйста, используйте этот

<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> 

Заменить «Y OUR_ACTION_PAGE_URL»с целевой URL действия

4

HTML

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

JQuery

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

самый простой способ заключается в следующем:

<a href="#" onclick="submit()">Submit</a> 
Смежные вопросы