文本框需要边输入边搜索边智能提示。现在我做出来的效果是:输入一个值后,出现智能提示,是由数据库获取,由几个字段拼起来的。
谁帮我修改下,做了几个小时没达到效果。
谁帮我修改下,做了几个小时没达到效果。
解决方案 »
- 100分,求网站管理思路
- 代码中几条语句不理解?
- 总提示连接不上数据库,可是数据库的用户名和密码都已经改成sa了啊。不知道是什么问题了
- HttpContext问题
- 下拉框选种某个值时,他所对应的id号在另一个文本框中显示
- 网站运行不稳定 很急忍 那位能帮我看看
- 这样操作webconfig怎么保存不了
- 在框架中使用treeview,如何通过右边的框架给左边的reeview 添加节点呢。。?
- 在detailsview中实现根据在数据库中读取的不同值显示不同的内容
- 请思归、孟子现身:可以新建项目,但是建好的项目不能重新打开,怎么回事啊?
- GRIDVIEW如何动态隐藏命令列
- word文档中插入图片的板式问题,如嵌入式、四周环绕式
看下我的代码,keyword我怎么传过去。
后台CS文件:【PS:注意在方法上面加[WebMethod],用于前台调用】 [WebMethod]
public static string GetTip(string keyword)
{
IList<ACSClass> list = GetACSClassByClassName(keyword);
string str = "[";
for (int i = 0; i < list.Count; i++)
{
ACSClass acsclass = (ACSClass)list[i];
str += "{name:'" + acsclass.Classcode + "',to:'" + acsclass.Classname + "'},";
}
str = str.Substring(0, str.Length - 1);//去掉最后一个逗号
str += "]";
return str.ToString();
}
前台:使用ajax传递,onkeyup事件时候调用后台的那个方法 <script type="text/javascript">
var emails;
var keywordlist;
function SaveValidation_onSuccess(result)
{
if(result=="]")
{
//alert("没有数据");
}
else
{
emails=result;
keywordlist=eval(emails);
}
}
function SaveValidation_onFail(errors, userContext, methodName)
{
alert(errors.get_Message());
}
function changeTip()
{
var keywords=document.getElementById("keyword").value;
if(keywords.length>=2){
PageMethods.GetTip(keywords,SaveValidation_onSuccess,SaveValidation_onFail);
$(function() {
$('#keyword').autocomplete(keywordlist, {
max:10, //列表里的条目数
minChars: 1, //自动完成激活之前填入的最小字符
width: 400, //提示的宽度,溢出隐藏
scrollHeight: 300, //提示的高度,溢出显示滚动条
matchContains: true, //包含匹配,就是data参数里的数据,是否只要包含文本框里的数据就显示
autoFill: false, //自动填充
//提示
formatItem: function(row, i, max) {
return i + '/' + max + ':"' + row.name + '"[' + row.to + ']';
},
//匹配
formatMatch: function(row, i, max) {
return row.name + row.to;
},
//结果
formatResult: function(row) {
return row.name;
}
}).result(function(event, row, formatted) {
document.getElementById("keyword2").value=row.to;
});
});
}
}
</script>
str.ToString();已经是string的类型,还ToString吃饱没事干。