У меня есть код для поиска нескольких слов в таблице, но он еще не идеален. Что делать, если я ввел эти несколько слов не в порядок? например, «John Lennon 151 sf» и «paul mccartney 753 tj», и я напечатал слово «lennon 753 tj», результатом должно быть два из них. но результат, который я получил это строка только Джоне Ленноне ..как найти в таблице все возможные результаты jquery
вот мой код
<input id="emp_search" />
<input id="search" type="button" value="search" />
<table>
<tr>
<th>First Name</th>
<th>Last Name</th>
<th>number</th>
<th>letters</th>
</tr>
<tr>
<td>John</td>
<td>Lennon</td>
<td>151</td>
<td>sf</td>
</tr>
<tr>
<td>Paul</td>
<td>McCartney</td>
<td>753</td>
<td>tj</td>
</tr>
<tr>
<td>George</td>
<td>Harrison</td>
<td>24</td>
<td>ge</td>
</tr>
<tr>
<td>Ringo</td>
<td>Starr</td>
<td>26</td>
<td>hg</td>
</tr>
</table>
и здесь ..
if (!RegExp.escape) {
RegExp.escape = function (s) {
return s.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, "\\$&")
};
}
jQuery(function ($) {
///search this table
$(' #search ').click(function() {
var searchthis = new RegExp($(' #emp_search ').val().replace(/\s+/, '|'), 'i');
$("table").find("tr").slice(1).each(function (index) {
var text = $.trim($(this).text());
$(this).toggle(searchthis.test(text));
});
});
});
и что будет я добавить к моему JQuery? спасибо заранее :)
http://jsfiddle.net/wind_chime18/ANLgD/5/
Я думаю, что она была решена в вашем предыдущем посте сам http://jsfiddle.net/arunpjohny/D6nzC/10/ –
@arun это не работает, когда Я хочу найти одного человека. а также название группы beatles. например, «John beatles» – Vincent
@ Vincent, если вы ищете «John Beatles», он отобразит все строки, поскольку «Битлз» присутствует во всех них: http://jsfiddle.net/arunpjohny/D6nzC/15/ –