我有以下代码可以正常工作...用户在文本框中输入文本,然后单击Enter保存它:
$('#tagit #btnsave').live('click',function(){
name = $('#tagName').val();
counter++;
$('#taglist ol').append('<li rel="'+counter+'"><a>'+name+'</a> (<a class="remove">Remove</a>)</li>');
$('#imgtag').append('<div class="tagview" id="view_'+counter+'"></div>');
$('#view_' + counter).css({top:mouseY,left:mouseX});
$('#tagit').fadeOut();
});
我想要做的是能够使用输入按钮而不必点击#btnsave
按钮,所以我正在尝试:
$('#tagName').keyup(function(event){
if(event.keyCode == 13){
$('#tagit #btnsave').click();
}
});
但它什么也没做 - 有更好的方法吗?
答案 0 :(得分:1)
答案 1 :(得分:1)
尝试 .trigger ,如
$('#tagName').keyup(function(event){
if(event.keyCode == 13){
$('#btnsave').trigger('click');
}
});
并尝试避免.live功能,因为它被删除。而不是.live尝试.on喜欢
$('#tagit #btnsave').on('click',function(){
答案 2 :(得分:0)
当你将keyup事件绑定到该元素时,要小心#tagName
引用的内容。只有在选中该元素时才会运行该事件。如果希望在按下enter时始终发生事件,则可以将事件绑定到窗口。