ajax auto complete extender结果为字符串

时间:2014-06-03 16:03:43

标签: c# asp.net ajax vb.net autocomplete

我遇到了一个有趣的问题...... 我在文本框上使用ASP和自动完成扩展程序 我把一切都搞定了,但结果很奇怪。

在搜索315122-111之类的内容时,唯一会出现的结果是315011。 这是因为item-number被视为数字而不是字符串

315122-111=315011

我正在将所有内容作为字符串发送..当我使用fiddler来查看流量时,所有自动完成响应都会在315122-111中出现,但它们并不正确...

关于如何解决这个难题的任何想法?

1 个答案:

答案 0 :(得分:0)

是否在javascript端调用了eval()?

http://www.w3schools.com/jsref/jsref_eval.asp

这篇帖子中修复了一个错误:

http://forums.asp.net/t/1164200.aspx?New+AutoCompleteExtender+doesn+t+work+with+Numeric+Values

他们说:

 1. download the ajax control toolkit source. open the file
 2. AjaxControlToolkit\AutoComplete\AutoCompleteBehavior.js at line 748,
 3. you should see: "if (String.isInstanceOfType(pair)) {"

That line is what is causing the problem.... to fix it, I changed that line to  "if (String.isInstanceOfType(pair) || Int.isInstanceOfType(pair)) {".