I’m one of the contributors for the Meta Box Class here on Github (link) and before I get too deep, I wanted to ask if anyone knew of a straight forward way to allow users to add additional fields “on the fly”, having an “add” button with a text field to add additional fields (i.e. list items). I’ve seen this done a few ways in the past, but I’m all for not reinventing the wheel.

2 Answers
2

Agreed, I’ve seen it too, but I don’t think there’s any readily available API or method.

For me, I use a lick of jQuery;

<input type="text" class="list-item" name="list_items[]" />
<input type="button" class="button-secondary" id="add-list" />

<script type="text/javascript">
    ( function( $ ) {
        $( '#add-list' ).click( function() {
            var $item =  $( '.list-item:last' ), $new = $item.clone();
            $item.after( $new.val( '' ) );
        }
    })( jQuery );
</script>

Note that you might wanna tweak those selectors if you plan on having multiple ‘instances’ of these.

Leave a Reply

Your email address will not be published. Required fields are marked *