TokenInput + Uncaught TypeError:无法读取未定义的属性'toLowerCase'

时间:2014-08-11 07:30:33

标签: javascript asp.net-mvc jquery-tokeninput

我想创建一个带有预定义可能值的文本框,但我最终得到了一个错误:

  

未捕获的TypeError:无法读取属性' toLowerCase'未定义的

我尝试使用令牌输入脚本(http://loopj.com/jquery-tokeninput/)但我无法从数据库中读取数据。我正在使用.NET MVC。

这是我的方法(在模型中)来读取数据:

   public List<CRMClientsModel> CRMClientsModel() {   
        var sqlConnect = DbConnectHelper.GetDbInstance<SqlConnection>();
        var query = string.Format("SELECT CompanyName,Id from Company");
        return sqlConnect.Query<CRMClientsModel>(query).ToList();
   }

这里是负责将数据转换为JSON格式的控制器部分

        CRMLogic Logic = new CRMLogic();
        CRMModel Model = new CRMModel();
        List<CRMClientsModel> Clients = Logic.CRMClientsModel().ToList();
        List<CRMClientViewModel> ClientsVM = Clients.Select(a => a.ToViewModel<CRMClientViewModel>()).ToList();
        Model.CRMClientsModel = Clients;
        CRMViewModel ViewModel = new CRMViewModel();
        ViewModel.CRMClientsModel = ClientsVM;

        JavaScriptSerializer jsonSerialiser = new JavaScriptSerializer();
        string json = jsonSerialiser.Serialize(ClientsVM);

        ViewModel.jsonproject = json;

然后在View中调用

<script type="text/javascript">
    $(window).ready(function () {
        @*var item = @Html.Raw(Model.jsonproject)
            alert(item)*@
        $("#inputproject").tokenInput(@Html.Raw(Model.jsonproject),
        {
            theme: "facebook", minChars: 0
        });
    });
</script>

1 个答案:

答案 0 :(得分:0)

知道了。事实证明,错误是由于缺少&#34; propertyToSearch&#34;。类似的问题如下: jQuery-tokeninput failing: "term" is undefined?