如何在javascript中为phonegap实现搜索功能?

时间:2013-05-30 06:53:13

标签: javascript jquery html search cordova

我想在java脚本中实现搜索功能。我是java脚本的新手。如果我在下面的代码中犯了任何错误,请原谅我。

我该如何实施?

我尝试像这样实施

的javascript

$("#input").keyup(function() {
var userInput = $(this).val();
$("#list div").map(function(index, value) {
    $(value).toggle($(value).text().toLowerCase().indexOf(userInput) >= 0);
});

});

但是,CORDOVA就不会认可$ ...当我实现它时

document.getElementById("input").keyup(function() {
                var userInput = val();
                document.getElementById("main div").map(function(index, value) {
                document.getElementById(value).toggle(document.getElementById(value).text().toLowerCase().indexOf(userInput) >= 0);

现在,我收到错误

05-30 11:59:18.500: INFO/Web Console(930): JSCallback Error: TypeError: Result of expression 'document.getElementById("input").keyup' [undefined] is not a function. at file:///android_asset/www/cordova-2.1.0.js:3727

HTML

<input type="text" id="input"/>
<div id="list">
<div>Rich</div>
<div>Rajim</div>
<div>vimal</div>
<div>RAGHU</div>
</div>

请给我一个解决方案。

1 个答案:

答案 0 :(得分:3)

问题是你没有包含JQuery。一旦你加入它,它就有效。 jsfiddle:http://jsfiddle.net/Y49EW/

$("#input").keyup(function () {
    var userInput = $(this).val();
    console.log("here");
    $("#list div").map(function (index, value) {
        $(value).toggle($(value).text().toLowerCase().indexOf(userInput) >= 0);
    });
});

包含jQuery:

1)从这里下载jquery(选择一个版本):http://jquery.com/download/

2)将其添加到html页面的head标记中

 <script type="text/javascript" src="jquery-versionyouchoosed.js"></script>

例如,如果您使用的是1.9.1版本,则需要使用 -

 <script type="text/javascript" src="jquery-1.9.1.js"></script>