0

私はjqueryオートコンプリートを使用しており、正常に動作しています。私の要件は、選択された値がドロップダウンから削除されることです。どうすればそれを達成できますか? jsとhtmlは以下です

js

var classes=[];
            $.ajax({
                    url: "classes.htm",
                    dataType : "json",
                    success: function(data) {
                        var val = data;
                        var arr=val.toString().split(",");
                        for(var i=0;i<arr.length;i++)
                            {
                                classes.push(arr[i]);
                            }

                    }
                    ,
                    error:function(jqXHR, textStatus, errorThrown){
                    alert(textStatus);
                    }
                });

            $( "#cls" ).autocomplete({
                source: classes
            });
            $("#cls").bind("autocompleteselect", function(event, ui) {

            });

html

<input type="text"  name="cls" id="cls"/>

感謝と敬意

4

1 に答える 1

3

sourceリストの 1 つの要素が選択されているときに、オートコンプリート要素のオプションを上書きするだけです。

$("#cls").bind("autocompleteselect", function (event, ui) {
   // Remove the element and overwrite the classes var
   classes.splice(classes.indexOf(ui.item.value),1);

   // Re-assign the source
   $(this).autocomplete("option","source",classes);
});

ユーザーがオプションを選択すると、自動的に削除されるので注意してください。

于 2013-05-12T12:37:48.203 に答える