我对 jQuery 自动完成有疑问。当我在“LI”之类的字段中写一些东西时,我需要自动完成返回所有以“LI”开头的单词(小写和大写的单词)。但是当我写这个时,自动完成只会返回大写的单词。有可能改变这个吗?
更新:我找到了一种方法,我不知道这是否是正确的方法,但是......我正在使用它。它只是放入自动完成“ILIKE”的“SELECT”,而不是“LIKE”。它对我有用,但是(再次)我不知道这是否是正确的方法!
我对 jQuery 自动完成有疑问。当我在“LI”之类的字段中写一些东西时,我需要自动完成返回所有以“LI”开头的单词(小写和大写的单词)。但是当我写这个时,自动完成只会返回大写的单词。有可能改变这个吗?
更新:我找到了一种方法,我不知道这是否是正确的方法,但是......我正在使用它。它只是放入自动完成“ILIKE”的“SELECT”,而不是“LIKE”。它对我有用,但是(再次)我不知道这是否是正确的方法!
最简单的解决方案是什么?我的解决方案是 PHP+MySQL,但您可以简单地将其调整为您想要的每个场景。
$upperString = strtoupper($stringToCompare);
$query .= "SELECT blablabla WHERE UPPER(columnName) LIKE '%$upperString%'";
奇迹般有效
Linuxatico
根据您为自动完成构建列表的方式,这可能会自动内置,例如,在我的 C# 代码中,实体框架与 MySQL db 对抗的情况对我来说并不重要。
//Builds a search list for Card Name Search boxes
public JsonResult GetACResults(string term)
{
return Json((from item in db.tableName
where item.NameOfInterest.Contains(term)
select new
{
value = item.NameOfInterest
}).Distinct().OrderBy(x => x.value).ToList(),
JsonRequestBehavior.AllowGet);
} //public JsonResult GetACResults(string term)
如果这是您必须自己处理的问题,您可以将这篇文章视为解决方案: Case insensitive 'Contains(string)'
我找到了一种方法,我不知道这是否是正确的方法,但是......我正在使用它。它只是放入自动完成"ILIKE"的 "SELECT" ,而不是"LIKE"。它对我有用,但是(再次)我不知道这是否是正确的方法!
:)