知道为什么这个Jquery自动完成功能无效吗?

时间:2015-11-13 15:57:12

标签: javascript jquery html asp.net autocomplete

我发现很多关于jquery自动完成功能无法正常工作的问题似乎都是因为JSON不正确,但我只想尝试使用带有数组的简单示例来获取它上班。我能够在一个新创建的文本文件中运行它,但是我需要让它在一个相当大的asp.net应用程序中运行(我不幸从另一个开发人员那里接管了,所以我没有设置它)

 $(function() {
var availableTags = [
  "ActionScript",
  "AppleScript",
  "Asp",
  "BASIC",
  "C",
  "C++",
  "Clojure",
];
$( "#tags" ).autocomplete({
  source: availableTags
});

});

这是我非常简单的自动完成代码。如果我把它放在带有一些html和所需引用的文本文件中,它就会起作用。但是,如果我在我的asp.net应用程序中的文本框上放置相同的东西它不起作用。我想知道它是否与css有关,因为当我把它放入文本文件并使用时

<link rel="stylesheet" href="http://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">

它不会起作用。这是jqueryui.com上的代码当我将其更改为

<link rel="stylesheet" href="http://code.jquery.com/ui/1.11.4/themes/ui-lightness/jquery-ui.css">

确实如此。我假设有什么东西在干扰它...任何想法可能是什么?这个应用程序中已经有多个css表,我不太清楚怎么说。

感谢您提供的任何帮助。如果有人甚至知道我可以检查什么,那将非常有帮助。

编辑:以下是我使用的实际代码:

<div id="Question_5" class="question">
                        <asp:UpdatePanel runat="server" ID="Q51UP">
                            <ContentTemplate>
                                <asp:Label runat="server" ID="Q51Label"></asp:Label>
                                <label style="color: #D9534F">* </label>
                                <br />

                                <asp:TextBox ID="Q51TextBox" class="text-box MyStyleSheet" runat="server" Width="200%"></asp:TextBox>

                                    <br />
                                <asp:RequiredFieldValidator EnableClientScript="false" ID="v5" runat="server" ControlToValidate="Q51TextBox"
                                    ErrorMessage="Value Required!" InitialValue="" ForeColor="#d9534f" SetFocusOnError="true">
                                </asp:RequiredFieldValidator>
                                <div style="height: 0px;"></div>
                            </ContentTemplate>
                        </asp:UpdatePanel>
                    </div>

然后在我的javascript中:

var availableTutorials = [
               "ActionScript",
               "Boostrap",
               "C",
               "C++",
            ];
       $("#Q51Textbox").autocomplete({
                source: availableTutorials
       });

1 个答案:

答案 0 :(得分:0)

你有一个错字:

<asp:TextBox ID="Q51TextBox"....

并在你的js中用Text:

调用TextBox id

$("#Q51Textbox")(更改小写&#39; b&#39;&#39;框&#39;)