jQuery表单插件,如何只提交可见字段


jQuery form plugin , how to submit only visible fields

使用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一起使用)。如何使用这两种方法中的任何一种只提交可见字段?

$("#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;
});