2014-11-14 31 views
0

我正在与每个锂元素内的按钮自动完成。点击此按钮时,我不想调用选择自动完成事件。但是选择事件正在被调用,是否有任何解决方法。按钮点击里面的自动完成

FIDDLE

.data("autocomplete")._renderItem = function(ul, item) { 
    var li= $("<li></li>") 
      .data("item.autocomplete", item) 
      .append("<a style='text-align:left' href='google.com'> <span>"+item.label+"</span><input class='prod-list-addbtn' value='ADD' type='button' style='position: relative;top: 6px;'></a>") 
.appendTo(ul); 
    return li; 
} 

$(document).delegate('ul .prod-list-addbtn', 'click', function (e) { 
        e.stopPropagation(); 
        e.preventDefault(); 
    alert('dont call select of autocomplete, but still called'); 
        return false; 
    }); 
+0

所以你不希望呼吁按钮委托事件绑定点击右键? –

回答

1
<li class="ui-menu-item" role="menuitem"><a style="text-align:left" href="google.com" class="ui-corner-all" tabindex="-1"> <span>Tommy Smith</span></a><input class="prod-list-addbtn" value="ADD" type="button" style="position: relative;top: 6px;z-index: 400;"></li> 

你可以把输入元素插入li元素而不是一个元素。 通过这种方式,你不必选择触发事件

---在这里更改像下面-----

var li= $("<li></li>") 
      .data("item.autocomplete", item) 
    .append("<a style='text-align:left;float:left' href='google.com'> <span>"+item.label+"</span></a><input class='prod-list-addbtn' value='ADD' type='button' style='position: relative;top: 6px;float:left'>") 
.appendTo(ul); 
相关问题