文本框焦点实际上并不存在,但我可以输入

时间:2013-07-30 07:22:29

标签: javascript jquery asp.net

jquery autocomlete有时无法在文本框中工作。这是因为 我发现有时焦点不是实际设置在文本框中但是当我输入时数据数据显示在文本框中如果我点击使用鼠标在texbox自动完成并且一切正常 我的问题是,如果文本框接受输入,那么为什么焦点设置在其他地方

 <asp:TextBox ID="txtRaNumber" runat="server" Width="240px" AutoPostBack="True" OnTextChanged="txtRaNumber_TextChanged" ToolTip="Type RA Number here"></asp:TextBox>


 $.widget('custom.mcautocomplete', $.ui.autocomplete, {
            _renderMenu: function (ul, items) {
                var self = this,
                    thead;

                if (this.options.showHeader) {
                    table = $('<div class="autofil-header" style="width:100%"></div>');
                    $.each(this.options.columns, function (index, item) {
                        table.append('<span style="padding:0 4px;float:left;width:' + item.width + ';">' + item.name + '</span>');
                    });
                    table.append('<div style="clear: both;"></div>');
                    ul.css("height", "200px");
                    ul.css("overflow", "auto");
                    ul.css("background-color", "#EBF4FB");
                    ul.append(table);
                }
                $.each(items, function (index, item) {
                    self._renderItem(ul, item);
                });
            },
            _renderItem: function (ul, item) {
                var t = '',
                    result = '';

                $.each(this.options.columns, function (index, column) {
                    t += '<span style="padding:0 0px;float:left;width:' + ((parseInt(column.width) - 50) + "px") + ';">' + item[column.valueField ? column.valueField : index] + '</span>'
                });

                result = $('<li></li>').data('item.autocomplete', item).append('<a class="autofil-content">' + t + '<div style="clear: both;"></div></a>').appendTo(ul);
                return result;
            }
        });

0 个答案:

没有答案