Dynfields now support dynamic placeholder values

This commit is contained in:
Djamil Legato
2014-09-15 12:07:56 -07:00
parent ae0ed5c300
commit 90cdc844d0
2 changed files with 8 additions and 4 deletions

View File

@@ -10,7 +10,7 @@
},
addField: function (event, element) {
element = $(event.target);
var div = $('<div class="form-row" />').html(this.layout());
var div = $('<div />').html(this.layout());
div.insertAfter(element.parent('div'));
},
remField: function (event, element) {
@@ -26,8 +26,12 @@
return this.container.data('grav-dynfields') || 'generic';
},
layout: function () {
var name = this.getName();
return '' + ' <input type="text" value="" placeholder="/Your/Alias" />' + ' <input type="text" name="' + name + '[]" value="" placeholder="/Your/Real/Route" />' + ' <span data-grav-remfield class="fa fa-minus"></span> <span data-grav-addfield class="fa fa-plus"></span>' + '';
var name = this.getName(),
placeholder = {
key: this.container.data('data-grav-dynfields-key') || 'Key',
val: this.container.data('data-grav-dynfields-value') || 'Value'
};
return '' + ' <input type="text" value="" placeholder="' + placeholder.key + '" />' + ' <input type="text" name="' + name + '[]" value="" placeholder="' + placeholder.val + '" />' + ' <span data-grav-remfield class="button fa fa-minus"></span> <span data-grav-addfield class="button fa fa-plus"></span>' + '';
}
};

View File

@@ -1 +1 @@
(function(e){var t={init:function(){var n=e("[data-grav-dynfields]");t.container=n;n.on("click","[data-grav-addfield]",t.addField.bind(t));n.on("click","[data-grav-remfield]",t.remField.bind(t));n.on("keyup","input:not([name])",t.updateFields.bind(t))},addField:function(t,n){n=e(t.target);var r=e("<div />").html(this.layout());r.insertAfter(n.parent("div"))},remField:function(t,n){n=e(t.target);n.parent("div").remove()},updateFields:function(t,n){n=e(t.target);var r=n.next();r.attr("name",this.getName()+"["+n.val()+"]")},getName:function(){return this.container.data("grav-dynfields")||"generic"},layout:function(){var e=this.getName();return""+' <input type="text" value="" placeholder="/Your/Alias" />'+' <input type="text" name="'+e+'[]" value="" placeholder="/Your/Real/Route" />'+" <span data-grav-remfield>[ - ]</span> <span data-grav-addfield>[ + ]</span>"+""}};e(t.init)})(jQuery);
!function(a){var b={init:function(){var c=a("[data-grav-dynfields]");b.container=c,c.on("click","[data-grav-addfield]",b.addField.bind(b)),c.on("click","[data-grav-remfield]",b.remField.bind(b)),c.on("keyup","input:not([name])",b.updateFields.bind(b))},addField:function(b,c){c=a(b.target);var d=a("<div />").html(this.layout());d.insertAfter(c.parent("div"))},remField:function(b,c){c=a(b.target),c.parent("div").remove()},updateFields:function(b,c){c=a(b.target);var d=c.next();d.attr("name",this.getName()+"["+c.val()+"]")},getName:function(){return this.container.data("grav-dynfields")||"generic"},layout:function(){var a=this.getName(),b={key:this.container.data("data-grav-dynfields-key")||"Key",val:this.container.data("data-grav-dynfields-value")||"Value"};return' <input type="text" value="" placeholder="'+b.key+'" />'+' <input type="text" name="'+a+'[]" value="" placeholder="'+b.val+'" />'+' <span data-grav-remfield class="button fa fa-minus"></span> <span data-grav-addfield class="button fa fa-plus"></span>'}};a(b.init)}(jQuery);