0

我是 JQuery 的新手,我正在尝试制作一个搜索框。当我在搜索框中输入时,它什么也没做,我也不知道为什么。任何帮助,将不胜感激。这是我的代码:

<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Search Test</title>
</head>
<body>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.1.js"></script>
<script type="text/javascript">
$(document).ready(function() {  
    var $cells = $("td");

$("#search").keyup(function() {
    var val = $.trim(this.value).toUpperCase();
    if (val === "")
        $cells.parent().show();
    else {
        $cells.parent().hide();
        $cells.filter(function() {
            return -1 != $(this).text().toUpperCase().indexOf(val); }).parent().show();
    }
});
});​
</script>
<form action="" method="post">
<label for="search">Search</label>
<input type="text" name="search" id="search" class="inputfield" />
</form>
<table border="0" align="left">
    <tr><td>Gripper 25x8-12 GR25812</td></tr>
    <tr><td>Gripper 25x10-12 GR251012</td></tr>
    <tr><td>Gripper 26x9-12 GR26912</td></tr>
    <tr><td>Gripper 26x12-12 GR261212</td></tr>
</table>
</body>
</html>
4

1 回答 1

0

这是我在Fiddle中尝试过的工作代码,它可以工作

尝试搜索25xinput box您将找到输出。

更新

您的代码之间可能存在一些零宽度空格,我检查并输入了Error您的代码,例如,

Uncaught SyntaxError: Unexpected token ILLEGAL

参考Chrome Uncaught Syntax Error: Unexpected Token ILLEGAL

如果你重写上面的代码,

$(function(){
    var $cells = $("td");
    $("#search").keyup(function() {
        var val = $.trim($(this).val()).toUpperCase();
        if (val === "")
            $cells.parent().show();
        else {
            $cells.parent().hide();
            $cells.filter(function() {return -1 != $(this).text().toUpperCase().indexOf(val);}).parent().show();
        }
    });
})

然后我发现它有效

于 2013-07-03T05:51:20.353 回答