Telerik MVC Combobox自动完成错误

时间:2010-10-12 10:10:43

标签: model-view-controller telerik

我正在使用Telerik自动填充选项

在标题中:

<script type="text/javascript">
function onAutoCompleteDataBinding(e) {
  var autocomplete = $('#AutoComplete').data('tAutoComplete');
  autocomplete.dataBind(["Product 1", "Product 2", "Product 3"]}
</script>

在视图的正文中:

<%=Html.Telerik().AutoComplete()
  .Name("AutoComplete")
  .ClientEvents(events => events.OnDataBinding("onAutoCompleteDataBinding"))
%>

http://demos.telerik.com/aspnet-mvc/combobox/clientsidebinding

我已经成功地将其用于其他应用程序,这非常简单。 我把这个例子贴在上面,表明这个也爆炸了:

 this.trigger = new $t.list.trigger(this);

想想我可能混淆了.js文件,现在我的自动完成功能无效。 js文件的任何sugesions以及它们必须以什么顺序才能正常工作

我的页面主要相关部分:

<body>
    <% Html.Telerik().ScriptRegistrar()
            .DefaultGroup(group => group
                .Add("MicrosoftAjax.js")
                .Add("MicrosoftMvcAjax.js")
            );
    %>
        <div class="MainTableBody">
            <asp:ContentPlaceHolder ID="ContentPlaceHolder" runat="server" />
        </div>

    <% Html.Telerik().ScriptRegistrar().Render(); %>
</body>
</html>

在我的web.config

<add namespace="Telerik.Web.Mvc.UI" />

非常感谢任何帮助或评论

2 个答案:

答案 0 :(得分:2)

发现问题,

MVC 3小错误,您需要将所有命名空间放在web.config中,而不是将它们放在mvc中的视图中。

在我看来是这样的.master

<%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %>
<%@ Import Namespace="Telerik.Web.Mvc.UI" %>

解决方案是,将其从主页面中取出并添加到您的web.config中,以便母版页只有:

<%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %>

和web.config有:

<pages>
      <namespaces>
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Routing" />
        <add namespace="Telerik.Web.Mvc.UI" />
     </namespaces>
</pages>

答案 1 :(得分:0)

我不太确定,但我认为没有加载telerik.list.js文件。检查是否加载了所需的javascript文件。这里is a help topic,显示每个组件所需的javascript文件。您可以使用 ViewSource ... 验证加载了哪些文件 浏览器的方法(例如FF)并查看页面的末尾。