如何使用自动完成(jQuery UI)更改select事件上的文本框值

时间:2011-11-27 11:24:36

标签: jquery jquery-ui autocomplete

选择项目时,为什么#input-myBox无法清除?似乎自动完成功能阻止了我的.val('')工作,所以我该如何解决这个问题?

$("#input-myBox").autocomplete({
    source: response,
    minLength: 1,
    select: function(event, ui) {
                var selectedObj = ui.item;
                $("#input-myBox").appendTo(".foo");
                $("#input-myBox").val('');  
    }
});

5 个答案:

答案 0 :(得分:42)

event.preventDefault()停止自动填充设置字段。

select: function (event, ui) {
  event.preventDefault();
  var selectedObj = ui.item;
  $("#input-myBox").appendTo(".foo");
  $("#input-myBox").val('');  
}

答案 1 :(得分:8)

另外,你可以使用'return false;'停止自动完成设置字段。

select: function (event, ui) { 
    var selectedObj = ui.item;        
    $("#input-myBox").appendTo(".foo");
    $("#input-myBox").val('');  
    return false;
}

答案 2 :(得分:3)

如果您只想将所选值替换为其他值:

select: function( event, ui ) {
  ui.item.value = substituteWord(ui.item.value);
}

答案 3 :(得分:1)

#input-mybox(小写字母b)还是#input-myBox(大写字母b)?

这可能是你的问题:)

编辑:抢劫我打击它

答案 4 :(得分:0)

与您的代码不一致:

$("#input-mybox").appendTo(".foo");
$("#input-myBox").val('');  

"#输入myBox上" || "#输入myBox上" ???