Как получить определенное значение формы в jquery с помощью родительской функции $ self click - PullRequest
0 голосов
/ 08 июля 2011

У меня есть форма, которая выглядит примерно так

<form action="#" class="ajax_form" method="post" id="comment_form" accept-charset="utf-8">
<textarea name="comment" id="form_comment"></textarea>
<input name="another_field" value="some data" type="text" id="form_another_field" />
<input name="method" value="some_method" type="hidden" id="form_method" />
<input name="submit" value="Submit" type="submit" id="form_submit" />
</form>

и слушатель отправки jquery для любого класса с именем ajax_form

$(document).ready(function() {

$('.ajax_form').submit(function() {

    alert(JSON.stringify($(this).serializeObject()));
    alert($("input:form_method").val());
    return false;
});

});

Первая часть функции submit сериализует элементы формы и помещает их в строку json для запроса ajax.Но мне нужно извлечь значение id #form_method, прежде чем я сделаю запрос ajax, но не могу понять, как это сделать со ссылкой на использование $ this.Я пытался получить детей формы $ this, но тоже не смог этого сделать.

Ответы [ 2 ]

2 голосов
/ 08 июля 2011

Вам не хватает # в вашем селекторе.Это должно сделать трюк:

$("#form_method").val();
1 голос
/ 08 июля 2011

Вы должны попробовать $("input#form_method").val() вместо $("input:form_method").val()

На самом деле только $("#form_method").val() должен отлично выполнять эту работу.

В конце концов вы можете указать контекст поиска с помощью $("#form_method",this).val(), если у вас есть несколько ajax_form на странице, но в этом случае вам следует пересмотреть, используя несколько раз один и тот же идентификатор, поскольку идентификатор должен быть уникальным

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...