Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从div获取行计数_Javascript_Jquery - Fatal编程技术网

Javascript 从div获取行计数

Javascript 从div获取行计数,javascript,jquery,Javascript,Jquery,如何从div获取行计数?我应该从伯爵那里得到2分。我试了一下,但没能数到。我所要做的就是获取总计数并将计数放入rowCountdiv <div id="__gvctl00_ctl33_g_1fce23cc_cb78_4993_8f8a_c3369f472afa_ReportGrid__div"> <table class="ms-WPBody" cellspacing="0" id="ctl00_ctl33_g_1fce23cc_cb78_499

如何从div获取行计数?我应该从伯爵那里得到2分。我试了一下,但没能数到。我所要做的就是获取总计数并将计数放入
rowCount
div

        <div id="__gvctl00_ctl33_g_1fce23cc_cb78_4993_8f8a_c3369f472afa_ReportGrid__div">
        <table class="ms-WPBody" cellspacing="0" id="ctl00_ctl33_g_1fce23cc_cb78_4993_8f8a_c3369f472afa_ReportGrid" style="border-style:None;width:100%;border-collapse:collapse;width:100%;">
            <tbody><tr class="ms-viewheadertr ms-vhltr">
                <th class="ms-vh2" align="left" scope="col">Item</th><th class="ms-vh2" align="left" scope="col">&nbsp;</th><th class="ms-vh2" align="left" scope="col"><a onclick="javascript:__gvctl00_ctl33_g_1fce23cc_cb78_4993_8f8a_c3369f472afa_ReportGrid.callback(&quot;0|0|/wEFDFdvcmtmbG93TmFtZQmCSxMfY/MQRgGNQMjtH6ms4WKDojWXqKHYKkdrUi0C|&quot;); return false;" href="javascript:__doPostBack('ctl00$ctl33$g_1fce23cc_cb78_4993_8f8a_c3369f472afa$ReportGrid','Sort$WorkflowName')">Workflow</a></th><th class="ms-vh2" align="left" scope="col">Status</th><th class="ms-vh2" align="left" scope="col"><a onclick="javascript:__gvctl00_ctl33_g_1fce23cc_cb78_4993_8f8a_c3369f472afa_ReportGrid.callback(&quot;0|0|/wEFCUVudHJ5VGltZWJK5FwcSWabKTvGRw+GSCnlui6XteK5oxR2+e2cXtJw|&quot;); return false;" href="javascript:__doPostBack('ctl00$ctl33$g_1fce23cc_cb78_4993_8f8a_c3369f472afa$ReportGrid','Sort$EntryTime')">Waiting since</a></th><th class="ms-vh2" align="left" scope="col"><a onclick="javascript:__gvctl00_ctl33_g_1fce23cc_cb78_4993_8f8a_c3369f472afa_ReportGrid.callback(&quot;0|0|/wEFFEN1cnJlbnRBY3Rpdml0eVRpdGxlkVg5pZyBZyiI8xdXZ5QTh61pFRK8yr4Y6G7G3fj/9GE=|&quot;); return false;" href="javascript:__doPostBack('ctl00$ctl33$g_1fce23cc_cb78_4993_8f8a_c3369f472afa$ReportGrid','Sort$CurrentActivityTitle')">Current action</a></th>
            </tr><tr>
                <td class="ms-vb2"><a href="http://canada-dev.canada.com/teams/wf/_layouts/15/NintexWorkflow/Redirect.aspx?view=WorkflowTask&amp;InstanceId=c051a9ce-8c56-40ed-af65-a69f6cf1af18&amp;SPTaskID=9">a test</a></td><td class="ms-vb2"></td><td class="ms-vb2">TEST-legalTasks</td><td class="ms-vb2"></td><td class="ms-vb2">4/6/2015 9:18 AM</td><td class="ms-vb2"><a href="http://canada-dev.canada.com/teams/wf/_layouts/15/NintexWorkflow/Preview.aspx?ListId=9417bb8a-7811-4b04-80d6-507c788969f5&amp;ItemId=1&amp;WorkflowId=5bdd0cef-5ade-4a27-ad9b-f0cfc17e3bf7&amp;InstanceId=c051a9ce-8c56-40ed-af65-a69f6cf1af18">Request approval</a></td>
            </tr><tr class="ms-alternating">
                <td class="ms-vb2"><a href="http://canada-dev.canada.com/_layouts/15/NintexWorkflow/Redirect.aspx?view=WorkflowTask&amp;InstanceId=9440ac78-287f-43d2-bb58-aebbe9c64983&amp;SPTaskID=3">How to handle in Nintex workflwo</a></td><td class="ms-vb2"></td><td class="ms-vb2">Nintex Task Workflow</td><td class="ms-vb2"></td><td class="ms-vb2">4/6/2015 2:05 PM</td><td class="ms-vb2"><a href="http://canada-dev.canada.com/_layouts/15/NintexWorkflow/Preview.aspx?ListId=331be81b-ce04-4930-819e-2ed17daf5acd&amp;ItemId=2&amp;WorkflowId=bff491a8-e0ef-4a12-aec1-8ebb4cd868db&amp;InstanceId=9440ac78-287f-43d2-bb58-aebbe9c64983">Request approval</a></td>
            </tr>
        </tbody></table>
    </div>

项目状态
TEST-legalTasks4/6/2015上午9:18
任天堂任务工作流4/6/2015下午2:05

试试这个,你的小提琴有一些错误,没有加载jquery。我相信它仍然需要添加jqueryui位置


alert('行数:'+$('table tr').length)
您可以获得表中
tr
元素的计数,如下所示:

$(".ms-WPBody tr").not(":has(th)").length
这将查找没有子元素的所有
tr
元素
th

完整代码:

var rowCount = $(".ms-WPBody tr").not(":has(th)").length;
$(".rowCount").text("Num of rows: " + rowCount);
这表明:

行数:2

而且不必使用任何像“-1”这样的神奇数字,如果表的结构发生变化,这些数字可能会引入一个粗略的错误


下面是更新后的JSFIDLE:

记住-1以补偿标头

var rows = 0;
rows = $('table').find("tr").length - 1;
$('#rowCount').html('row');
alert('Num of rows: ' + rows );

小提琴有几处地方不对劲,它们是:

  • jQuery没有附加,但您正在尝试使用它(您可以在JSFIDLE的左上角下拉列表中附加库)
  • 您使用的是ID选择器,而您应该使用类选择器(“#”表示ID,“.”表示类)
  • 您正在将字符串“row”插入html而不是变量row
以下是我相信你想要的:

var parentX = $('.ms-vb2').position().left;
var rows = 0;

$('.ms-vb2').each(function(){
  if( $(this).position().left === parentX ) ++rows;
});

$('.rowCount').html('Num of rows: ' + rows);
更新小提琴:

请记住,这些是非常松散的选择器,如果可以,您可能希望向行中添加特定的类,以便无需执行
$即可对它们进行计数。每个


类似于
$('.a-row-class').length

您需要表中的行数吗?OP希望看到2行。这个解决方案提醒我为什么不能解析JSFIDLE中的代码?计数为null.works。很抱歉,我认为javascript在jquery框架运行之后是有效的。感谢lotI在javascript中添加了额外的一行,因为如果没有数据返回,它会添加一个带有“此视图中没有项目”的td。但是我认为这个代码有问题。如果($('.ms WPBody tr>td:contains(“没有项”)){rowCount=0;}jsiddle计数为零。你知道我为什么要这么做吗。试试这个。