那是因为你searchText = "'#" + id + "'";这段拼出的字符串jquery不认识
$(searchText).autocomplete.....就出错了代码中断alert当然不会弹出
你可以这样改
var id = object.id;
var searchText = "#" + id ;
当然其实这也是多余的 因为jquery可以直接识别this对象的
你的
var id = object.id;
var searchText = "#" + id ;
$(searchText).autocomplete.....
这3句代码起到的作用跟
$(object).autocomplete.....
这一句代码的作用是一样的。完全不用先获取id再筛选多此一举
额,肯定可以混写啊,jquery不就是js么