如何允许只使用jquery ui组合框选择预定义的选项?

时间:2011-11-19 16:00:36

标签: jquery-ui jquery-ui-autocomplete

Here是我目前的jquery ui组合框。它使用远程数据源。 Here是将标准组合框用于标准组合框的方法。但我不确定如何在我的情况下应用它。

1 个答案:

答案 0 :(得分:3)

只需使用change事件查看是否已定义ui.item

/* snip */
change: function (event, ui) {
    if (!ui.item) { 
        this.value = 'Any City';
    }
}

更新示例: http://jsfiddle.net/FL7Nx/

根据下面的评论,如果您想动态找出默认值应返回的内容,您可以将该值分配给窗口小部件的_create方法中的选定选项:

_create: function() {
    var self = this,
        select = this.element.hide(),
        selected = select.children(":selected"),
        value = selected.val() ? selected.text() : "",
        defaultValue = value;

稍后在change函数中:

change: function (event, ui) {
    if (!ui.item) { 
        this.value = defaultValue;
    }
}

更新示例: http://jsfiddle.net/jmdx4/