$.fn.extNumber = function(){ var $this = $(this) var $node = $('-
+') $node.appendTo($this) $this.each(function(){ var $this = $(this) var $extNumberInput = $this.find('[data-ext-number=input]') $this.on('click','[data-ext-number=minus]',function(){ var value = $extNumberInput.val() value = !isNaN(+value) ? parseInt(+value) : 0 $extNumberInput.val(value < 1 ? 0 : value - 1) }) $this.on('click','[data-ext-number=plus]',function(){ var value = $extNumberInput.val() value = !isNaN(+value) ? parseInt(+value) : 0 $extNumberInput.val(value + 1) }) }) return this } $('#demo1,#demo3').extNumber()