मैं jQuery का उपयोग करके एक तालिका के भीतर कितने त्रि तत्वों की संख्या को गिनता हूं?
मुझे पता है कि एक समान प्रश्न है , लेकिन मुझे कुल पंक्तियाँ चाहिए।
मैं jQuery का उपयोग करके एक तालिका के भीतर कितने त्रि तत्वों की संख्या को गिनता हूं?
मुझे पता है कि एक समान प्रश्न है , लेकिन मुझे कुल पंक्तियाँ चाहिए।
जवाबों:
एक चयनकर्ता का उपयोग करें जो सभी पंक्तियों का चयन करेगा और लंबाई लेगा।
var rowCount = $('#myTable tr').length;
नोट: यह दृष्टिकोण भी हर नेस्टेड तालिका के सभी trs गिनता है!
यदि आप <tbody>
या <tfoot>
अपनी तालिका में उपयोग करते हैं, तो आपको निम्नलिखित सिंटैक्स का उपयोग करना होगा या आपको एक गलत मान मिलेगा:
var rowCount = $('#myTable >tbody >tr').length;
वैकल्पिक रूप से ...
var rowCount = $('table#myTable tr:last').index() + 1;
यह सुनिश्चित करेगा कि किसी भी नेस्टेड टेबल-पंक्तियों को भी गिना न जाए।
var rowCount = $('table#myTable tr:last').index() + 1;
<thead>
पंक्तियों और नेस्टेड तालिका पंक्तियों को अनदेखा करता है । अच्छा लगा। jsfiddle.net/6v67a/1576
<td>
में इनर टेबल है, तो यह उस टेबल की रो काउंट रिटर्न करता है !! jsfiddle.net/6v67a/1678
खैर, मुझे तालिका से अटर पंक्तियाँ मिलती हैं और उस संग्रह की लंबाई मिलती है:
$("#myTable").attr('rows').length;
मुझे लगता है कि jQuery कम काम करता है।
यहाँ मेरा उस पर ले लो:
//Helper function that gets a count of all the rows <TR> in a table body <TBODY>
$.fn.rowCount = function() {
return $('tr', $(this).find('tbody')).length;
};
उपयोग:
var rowCount = $('#productTypesTable').rowCount();
मुझे निम्नलिखित मिला:
jQuery('#tableId').find('tr').index();
यह एक कोशिश है अगर वहाँ tbody है
हेडर के बिना
$("#myTable > tbody").children.length
अगर हेडर है तो
$("#myTable > tbody").children.length -1
का आनंद लें!!!
<thead>
जाना चाहिए जिसमें पहले आना चाहिए <tbody>
। तो -1 की जरूरत नहीं होनी चाहिए, अगर तालिका मानक के अनुसार ठीक से डिज़ाइन की गई है।
मुझे AJAX रिटर्न में ऐसा करने का तरीका चाहिए, इसलिए मैंने यह टुकड़ा लिखा:
<p id="num_results">Number of results: <span></span></p>
<div id="results"></div>
<script type="text/javascript">
$(function(){
ajax();
})
//Function that makes Ajax call out to receive search results
var ajax = function() {
//Setup Ajax
$.ajax({
url: '/path/to/url', //URL to load
type: 'GET', //Type of Ajax call
dataType: 'html', //Type of data to be expected on return
success: function(data) { //Function that manipulates the returned AJAX'ed data
$('#results').html(data); //Load the data into a HTML holder
var $el = $('#results'); //jQuery Object that is holding the results
setTimeout(function(){ //Custom callback function to count the number of results
callBack($el);
});
}
});
}
//Custom Callback function to return the number of results
var callBack = function(el) {
var length = $('tr', $(el)).not('tr:first').length; //Count all TR DOM elements, except the first row (which contains the header information)
$('#num_results span').text(length); //Write the counted results to the DOM
}
</script>
जाहिर है कि यह एक त्वरित उदाहरण है, लेकिन यह मददगार हो सकता है।
row_count = $('#my_table').find('tr').length;
column_count = $('#my_table').find('td').length / row_count;
var trLength = jQuery('#tablebodyID >tr').length;