我正在尝试实现文本框的自动完成方法。
我想使用提供的基于 jquerys 自动完成的示例 here
<head>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
<script>
$(document).ready(function() {
$("input#autocomplete").autocomplete({
source: ["c++", "java", "php", "coldfusion", "javascript", "asp", "ruby"]
});
});
</script>
</head>
第一个也是主要的问题是我不知道如何将我的值传递给源:
我的意思是,假设我有一个服务器端 ASP.NET 函数 GetTheResults 作为 listof(string) 或 GetTheResults 作为字符串 ()
我应该如何将这些值作为自动完成所需的源传递?
第二个问题是具体方式没有使用AJAX。 这意味着我猜想在加载表单时我会将所有可用值加载到源中。这不是太过分了吗?
你有什么建议?
感谢和问候!
最佳答案
哦,也许我误解了 - GetTheResults
是服务器端 ASP.NET 函数吗?你没说。这假设它是一个客户端 JavaScript 函数。如果是服务器端,为什么不实现AJAX方式呢?
如果 GetTheResults
返回所有值,那么我认为您可以内联填充它,即
$("input#autocomplete").autocomplete({
source: GetTheResults()
}
});
然后控件将过滤要显示的列表。或者您可以使用该页面上记录的函数源机制,例如
$("input#autocomplete").autocomplete({
source: function(request, response) {
var results = GetTheResultsForInput(request.term);
response(results);
}
});
关于javascript - 如何将值传递给 JavaScript 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3875412/