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

Использование jQuery плагин формы, Я просто хочу отправить видимые поля (не скрытые) формы.

HTML:

<div class="result"></div>
<form id="myForm" action="comment.php" method="post">
Name: <input type="text" name="name" />
Comment: <textarea name="comment"></textarea>

<div style="display:none;">
<input type="text" value="" name="name_1" />
</div>

<input type="submit" value="Submit Comment" />

</form>

Я не могу найти способ отправить только видимые поля, используя любой из методов ниже:

ajaxForm:

// wait for the DOM to be loaded
$(document).ready(function() {
// bind 'myForm' and provide a simple callback function
$('#myForm').ajaxForm(function() {
alert("Thank you for your comment!");
});
});

ajaxSubmit:

$('#myForm').ajaxSubmit({
target: '.result',
success: function(response) {
alert("Thank you for your comment!");}
});

Есть еще один метод formSerialize но не нашел способа использовать его с двумя методами, упомянутыми выше (можно использовать с $.ajax тем не мение).
Как отправить только видимые поля, используя любой из двух методов?

3

Решение

$("#myForm").on("submit", function() {
var visibleData = $('#myForm input:visible,textarea:visible,select:visible').fieldSerialize();
$.post(this.action, visibleData, function(result) {
alert('Thank you for your comment!');
});
// this is needed to prevent a non-ajax submit
return false;
});
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]