gpt4 book ai didi

javascript - HTML 实时过滤表

转载 作者:行者123 更新时间:2023-11-28 06:42:28 24 4
gpt4 key购买 nike

我正在尝试创建一个实时过滤功能。

我引用了 http://jsfiddle.net/7BUmG/2/这个网站写了我的函数,但我发现我无法过滤表格。

这是我的代码:

<!doctype html>
<html>

<head>
<meta charset="utf-8">
<title>Untitled Document</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
var $rows = $("#table tr");
$("#content").keyup(function() {
var val = $.trim($(this).val()).replace(/ +/g, ' ').toLowerCase();
$rows.show().filter(function() {
var text = $(this).text().replace(/\s+/g, ' ').toLowerCase();
return !~text.indexOf(val);
}).hide();
});
</script>
</head>

<body>
Filter : <input type="text"id="content"/>
<table id="table">
<tr><th>No</th><th>Language</th><th>Price</th></tr>
<tr><td>001</td><td>C#</td><td>7500</td></tr>
<tr><td>002</td><td>Java</td><td>7000</td></tr>
<tr><td>003</td><td>C</td><td>6000</td></tr>
<tr><td>004</td><td>C++</td><td>6500</td></tr>
<tr><td>005</td><td>PHP</td><td>5000</td></tr>
<tr><td>006</td><td>jQuery</td><td>9000</td></tr>
<tr><td>007</td><td>HTML5</td><td>800</td></tr>
<tr><td>008</td><td>VBasic</td><td>6500</td></tr>
</table>
</body>
</html>

例如,我在文本框中输入“J”,然后表格将立即显示“java”行和“jQuery”行。

我的问题出在哪里?

最佳答案

要么移动 script block 到页面末尾(就在 </body> 之前)或将它们添加到 document ready事件,如下所示:

jQuery(function($){
var $rows = $("#table tr");
$("#content").keyup(function() {
var val = $.trim($(this).val()).replace(/ +/g, ' ').toLowerCase();

$rows.show().filter(function() {
var text = $(this).text().replace(/\s+/g, ' ').toLowerCase();
return !~text.indexOf(val);
}).hide();
});
});

请参阅此 fiddle 示例:http://jsfiddle.net/b71oy2ke/1/

您的代码和您引用的 fiddle 之间的区别在于 fiddle 在 onload 期间包含 JavaScript事件,而您提供的源代码仅将其解包在 <head> 中.

关于javascript - HTML 实时过滤表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33673189/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com