7

我正在使用以下 jquery ui 自动完成功能。这与鼠标完美配合,但通过键盘,我无法选择任何值。看看代码。

$("#"+textBoxId).autocomplete("../common
   /autoSuggestValues.php?index="+index+"&
  randValue="+Math.random(), {
    selectFirst: false,
    width:textBoxWidth,
    minChars: 2,
    autoFill: false,
    scroll: true,
    scrollHeight: 120,
    formatItem: function (rowdata) {
        var details = rowdata[0].split('@#@');
        return details[0];
    }
});

$('#'+textBoxId).result(function (event, data, formatted) { 
    var det   =  data[0].split("@#@");
    if(det[0] != 'No Match Found') {
        $('#'+textBoxId).val($.trim(det[0])).css('border','');  
        $('#'+hiddenId).val(det[1]);
        processAutoSuggOptFunc(optionalFunction); //process the optional  
     function using the another built function "processAutoSuggOptFunc"
    } else {
        $('#'+textBoxId).val('');   
        $('#'+hiddenId).val('');    
    }
});
4

1 回答 1

4

对我来说,提供焦点方法可以解决: searchField.autocomplete({ ... focus: function (event, ui) { event.preventDefault(); jQuery(this).val(ui.item.suggestion); }, ... });

参见这里:http: //yuji.wordpress.com/2011/09/22/jquery-ui-autocomplete-focus-event-via-keyboard-clears-input-content/

于 2013-02-18T11:04:59.643 回答