2011-11-07 25 views
0

指數(ABC d ....)過濾數據我有這樣根據使用jquery

ABCDE小型要求....

當我點擊甲

表數據將只顯示名稱以A開頭的 像 蘋果 斧 螞蟻

(不要說篩選數據庫) 我該怎麼讓行它具有名稱以僅

開始感謝ü

+0

請提供一些代碼,然後任何一個人都可以回答這個問題 –

回答

1

你可以使用filter -

$("table tr").filter(function() { 
    return $(this).text().substring(0, 1).toLowerCase() != 'a'; 
}).hide(); 

這隻會工作,如果「名稱」列在表格中的第一列。如果你想尋找一個特定列在表中,你可以做這樣的事情 -

$("table tr").filter(function() { 
    return $(this).children('td').eq(0).text().substring(0, 1).toLowerCase() != 'a'; 
}).hide(); 

eq(0)可以改變在您選擇的列點。

演示 - http://jsfiddle.net/XHg5v/

+0

是的,它填滿我的需求 –

0

工作實例

<script type="text/javascript" src="jquery.min.js"></script> 
<body> 
    <ul id=hd> 
    <li>a</li> 
    <li>all</li> 
    <li>b</li> 
    </ul> 
    <ul id=content> 
<li >apple</li> 
<li >bre</li> 
<li >bbb</li> 
<li >ape</li> 
<li >aman</li> 
<li >bcd</li> 
</ul> 
<script type="text/javascript"> 
<!-- 
$('#hd>li').click(function(){ 
    var key = $(this).text(); 
    if(key == 'all') { 
     $('#content>li').show(); 
     return; 
    } 
    $('#content>li').hide(); 
    $('#content>li:content(^' + key +')').show() 
}) 

$.extend($.expr[':'], { 
    'content': function(elem, i, attr){  
    return(RegExp(attr[3]).test($(elem).text())); 
    } 
}); 

//--> 
</script> 
</body> 

使用jQuery text attribute selector。假設所有數據都以li顯示。

0
$('span').click(function(){ 

var letter = $(this).html(); 

$('tr').each(function(){ 

var val = $('this').children('td').val(); 

var first_letter = val.split('')[0]; 

if(first_letter == letter){ 

    $('this').hide(); 

} 
else{ 

    $('this').show(); 
} 
}); 

的細節假設A,B,C,d是在跨度

<span>A</span> 

和一個錶行有一個TD