在TypeScript中使用jQuery UI自动完成时出错

时间:2013-12-09 18:26:04

标签: jquery autocomplete typescript

我在TypeScript中使用jQuery UI Autocomplete 1.8.16,它给了我错误

http:/Scripts/jquery.ui.autocomplete.js第303行第3行的未处理异常 0x800a138f - Microsoft JScript运行时错误:预期的对象

自动填充正在使用

  • jquery.ui.core.js
  • jquery.ui.widget.js
  • jquery.ui.position.js

我包括我从互联网上下载的定义文件

<reference path="../jquery.d.ts" />
<reference path="../jqueryui.d.ts" /> its version is jQueryUI 1.9

不确定它是版本冲突还是什么。你能告诉我如何解决这个问题。

我在TypeScript中的自动完成代码是

$(document).ready(function () {

$(function () {
    $("#FileCode").autocomplete({
        source: this.GetFileCodes,           
        minLength: 3,
        select: function (event, ui) {
            if (ui.item) {
                $("#FilCode").val(ui.item.value);
                $("form").submit();
            }
        }
    });
});

})

2 个答案:

答案 0 :(得分:0)

TypeScript编译正常,因此最有可能导致问题的原因是您没有在运行时包含JavaScript文件:

<script src="jquery.js"></script>
<script src="jquery.ui.core.js"></script>
<script src="jquery.ui.widget.js"></script>
<script src="jquery.ui.position.js"></script>
<script src="yourscript.js"></script>

答案 1 :(得分:0)

谢谢Steve,你的问题给了我线索。

我调试并发现源为空

source: this.GetFileCodes

一旦我添加了硬编码的URL就行了。然后我修复了我的源URL路径并且它工作了。

非常感谢