Since you are appending elements dynamically you have to use event delegation
in this situation. Actually the registered events are not invoking in your context, that's why the buttons
are exhibiting their original behavior.
Try,
$(document).on('click','.plus',function(e){
and
$(document).on('click','.minus',function(e){
Additionally, the selector
that you are framing dynamically contains some meta-characters
, just pass that as a string
or you have to escape
it, in order to make your code work properly.
DEMO
New Demo after fixing your concatenation issues. And in that demo, i just removed the attribute selectors like [id='blah']
and replaced that with $('#blah')
.