文本框问题

heyanjun123456 2011-05-27 01:59:18
在一个文本快 输入多个值 这些值是数据库读出来的 且文本框带自动补全
...全文
137 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
heyanjun123456 2011-05-30
  • 打赏
  • 举报
回复
自动补全效果出来了 但是还要能假多个 而且还有样式上面带删除按钮的 有点困惑 就是选择多个以后 可以去掉自己不想要的
hch126163 2011-05-27
  • 打赏
  • 举报
回复
自动补全 是说 百度搜索框效果吗?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title></title>
<style type ="text/css">
html,body{width:100%;height:100%}
ul{padding:0px;margin:0px;list-style:none;}
li{cursor:pointer;padding:0px 5px; line-height:25px;height:25px;}
</style>
</head>
<body>
<p>
<input type='text' id='txtInput' onkeyup='getSearchKeys()'/>
<div id='divShow' style="position:absolute; z-index:9999; width:200px; height:auto; display:none;border:1px solid #ddd">
<ul>
<li>aaa</li>
</ul>
</div>
</p>
</body>
<script type="text/javascript">
var keys=['ada','sdfsd','bbb','sfga','dfhgfh','235s','dfew','ghjk','hjkghjk','fgjgfjf','fghjgfj','2345f','fthtr','sfgerw','tyerth','vnmu','wertewr','wert','asdfaf','zxcvd','gkju','dvfgdh','2354af','adsf','erterter','fghdfg','xvdfg','kjhu','qweasdas','xzce','werwre','zzczc','rtewtrew']; // 搜索值,可以用Ajax从数据库获取
var txtInput ;
var divShow ;
window.onload=function()
{
txtInput =document.getElementById("txtInput");
divShow = document.getElementById("divShow");
var p =getAbsPoint(txtInput);
divShow.style.left = p.x +'px';
divShow.style.top = p.y + txtInput.offsetHeight + 'px';
txtInput.onclick = divShow.onclick=function(e)
{
e = e||event;
var t = e.target||e.srcElement

if(t.tagName.toLowerCase()=='li')
{
txtInput.value = t.innerHTML;
divShow.style.display = "none";
return;
}
if(e && e.stopPropagation){
//W3C取消冒泡事件
e.stopPropagation();
}else{
//IE取消冒泡事件
window.event.cancelBubble = true;
}
};
document.body.onclick=function(e)
{
divShow.style.display = "none";
};
};
function getSearchKeys()
{
var s= txtInput.value;
if(s=='')
{
divShow.style.display = "none";
return;
}
var arr=['<ul>'];
for(var i=0;i<keys.length;i++)
{
if(keys[i].indexOf(s)>=0){
arr.push('<li>'+keys[i]+'</li>');
}
}

if(arr.length>1){
arr.push('</ul>');
divShow.innerHTML = arr.join('');
divShow.style.display = "block";
}else{
divShow.style.display = "none";
}
}

function getAbsPoint(e)
{
var x = e.offsetLeft;
var y = e.offsetTop;
while(e = e.offsetParent)
{
x += e.offsetLeft;
y += e.offsetTop;
}
return {"x": x, "y": y};
}
</script>
</html>
xuexiaodong2009 2011-05-27
  • 打赏
  • 举报
回复
使用jqueryui的autocomplete试试
http://jqueryui.com/demos/autocomplete/
heyanjun123456 2011-05-27
  • 打赏
  • 举报
回复
我把图片放相册了 你看看 3楼的兄弟 我也觉得你想的有点浅显了
michaelgong 2011-05-27
  • 打赏
  • 举报
回复
ajax 可行
小辛、 2011-05-27
  • 打赏
  • 举报
回复
可以上传图片的啊!~ 你先把你的图片存在csdn的相册里面,然后在把图片放在这里就可以了!~
如果是你说的那样的话!~ 直接每次做追加 可行不!~ 数据库读取到一条数据后 把数据现在text显示出来 在读取 就获取text的值 在追加上数据库读取的值!~~~~~~~~


感觉有点想的浅显了......
heyanjun123456 2011-05-27
  • 打赏
  • 举报
回复
哥们 不简单 这不能上传图片 看不出效果
灬上海爽爷 2011-05-27
  • 打赏
  • 举报
回复
既然你的问题问的那么浅显易懂。。那我也回答的浅显易懂好了。。。


AJAX

87,990

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧