Count JQuery values twig



我尝试在jQuery中显示我的树枝表的元素数量,但结果显示我0,而我有2个结果。

我的树枝

<tr class="info">
                                                <td>
                                                    {{ r.residence[key].name }}<br/>
                                                </td>
                                                <td id="name-count-resid">{{ r.name }}</td>
                                                <td>{{ r.prenom }}</td>
                                                <td>{{ r.email }}</td>
                                                <td>{{ r.tel }}</td>
                                                <td>{{ r.port }}</td>
                                                <td>
                                                    {% for key in r.groups|keys %}
                                                        {{ r.groups[key].name }}<br/>
                                                    {% endfor %}
                                                </td>
                                            </tr>

我的脚本

<script>
    $(document).ready(function () {
        var n = 0;
        $('name-count-resid').each(function () {
            var name = $(this);
            var count = name.closest('tr').find('name-count-resid');
            n += (name.html() * count.val());
        });
        alert(n);
        $('#nb-member-selected').append("Nbr: " + n);
    });
</script>

谢谢。

甚至不确定您要使用该代码做什么。如果r是集合的元素或数组registrants,则可以在Twig中执行以下操作:

<table>
    {% for r in registrants %}
    <tr class="info">
        <td>
            {{ r.residence[key].name }}<br/>
        </td>
        <td class="name-count-resid">{{ r.name }}</td>
        <td>{{ r.prenom }}</td>
        <td>{{ r.email }}</td>
        <td>{{ r.tel }}</td>
        <td>{{ r.port }}</td>
        <td>
            {% for key in r.groups|keys %}
                {{ r.groups[key].name }}<br/>
            {% endfor %}
        </td>
    </tr>
    {% endfor %}
    <tr class="total">
        <td colspan="7">{{ registrants | length }}</td>
    </tr>
</table>

,或者如果您真的想使用jQuery,则只需要这样做

$(function() {
  $('.total td').html($('.name-count-resid').length);
});
table td {
  border : 1px solid #A2A2A2;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table>
	{% for r in registrants %}
	<tr class="info">
		<td>
			{{ r.residence[key].name }}<br/>
		</td>
		<td class="name-count-resid">{{ r.name }}</td>
		<td>{{ r.prenom }}</td>
		<td>{{ r.email }}</td>
		<td>{{ r.tel }}</td>
		<td>{{ r.port }}</td>
		<td>
			{% for key in r.groups|keys %}
				{{ r.groups[key].name }}<br/>
			{% endfor %}
		</td>
	</tr>
	{% endfor %}
	<tr class="total">
		<td colspan="7">0</td>
	</tr>
</table>

您必须使用#来找到它的ID

var count = name.closest('tr').find('#name-count-resid');

您必须使用"#"用于ID,"。对于课堂而什么都没有,对于元素(例如,TR,A,身体,P,Strong,Table等)。

最新更新