您的位置:首页 > Web前端 > JavaScript

Javascript做模糊查询-数组无双(三)-最终代码

2012-08-21 00:25 357 查看

一、前几章的位置

Javascript做模糊查询-数组无双(一)-循环不能不重视

/article/1486868.html

Javascript做模糊查询-数组无双(二)-完美的调用筑造最后的成功

/article/1486867.html

二、代码清单

这一章呢,我没有什么好讲的了,就祝愿大家喜欢我的这篇文章,我会努力,尽我所能地为大家提供更好的代码和讲解。

具体代码如下:

<html>
<head>
<title>Javascript模糊查找</title>
</head>
<body>

<li onload="load('Name')" id="name">Name</li>
<li onload="load('sex')" id="sex">sex</li>
<li onload="load('age')" id="age">age</li>
<li onload="load('job')" id="job">job</li>
<li onload="load('mail')" id="mail">E-mail</li>

<input id="input" type="text" value="" />
<input id="search" type="button" onclick="findEach()" value="Search" />

<script>
var vData= ["name", "sex", "age", "job", "E-mail"];

function load(id)
{
alert(vData[0]);
//vData[vData.length] = document.getElementById(id).innerHTML;
}

function find(sFind, sObj)
{
var nSize = sFind.length;
var nLen = sObj.length;

var sCompare;

if(nSize <= nLen ){
for(var i = 0; i <= nLen - nSize; i++){
sCompare = sObj.substring(i, i + nSize);
if(sCompare == sFind){
return i;
}
}
}

return -1;
}

function findEach()
{
var sFind = document.getElementById("input").value;
if(sFind==""){
alert("Can not be empty");
}

if(sFind!=""){
var nPos;
var vResult = [];

for(var i in vData){
var sTxt=vData[i]||'';
nPos=sTxt.indexOf(sFind);
if(nPos>=0){
vResult[vResult.length] = sTxt;
}
}

alert(vResult);
}
}
</script>
</body>
</html>

那么这些代码运行出来是什么样的呢?

如果你在input里输入a,那结果如下:






看看图上的li里的有Name,sex,age,job,E-mail,那输出来的就有Name,age,E-mail说明运行成功!!!!当然你不信的话可以自己去试试。

测试位置:/article/5646149.html

我一再重复:

[b][b][/b][/b]

var vData= ["name", "sex", "age", "job", "E-mail"];
这行代码是关键,它会影响输出的结果。因此li里的只是个提示有哪些可查到,而并非核心所在,也就是说li里的是个装饰,没有实际作用。

----------------------------------------------------------------

欢迎大家转载我的文章。

转载请注明:转自Yorhom's Game Box

欢迎继续关注我的博客
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: