Jquery选择/取消选择首次使用,而不是后续点击

时间:2015-05-16 03:26:37

标签: jquery

In [42]: G=nx.random_geometric_graph(5,0.5)

In [43]: M=nx.to_scipy_sparse_matrix(G, nodelist=G.nodes(), dtype=float)

In [44]: M.todense()
Out[44]: 
matrix([[ 0.,  1.,  0.,  1.,  1.],
        [ 1.,  0.,  0.,  0.,  1.],
        [ 0.,  0.,  0.,  1.,  1.],
        [ 1.,  0.,  1.,  0.,  1.],
        [ 1.,  1.,  1.,  1.,  0.]])

In [45]: S = scipy.array(M.sum(axis=1)).flatten()

In [46]: S[S != 0] = 1.0 / S[S != 0]

In [47]: Q = scipy.sparse.spdiags(S.T, 0, *M.shape, format='csr')

In [48]: (Q*M).todense()
Out[48]: 
matrix([[ 0.        ,  0.33333333,  0.        ,  0.33333333,  0.33333333],
        [ 0.5       ,  0.        ,  0.        ,  0.        ,  0.5       ],
        [ 0.        ,  0.        ,  0.        ,  0.5       ,  0.5       ],
        [ 0.33333333,  0.        ,  0.33333333,  0.        ,  0.33333333],
        [ 0.25      ,  0.25      ,  0.25      ,  0.25      ,  0.        ]])

此功能仅在第一次工作,即使它不是document.ready(function)的一部分。

它不适用于后续点击?这里有什么遗漏的吗?任何帮助将不胜感激。

我所有的孩子复选框都是parent2,3,4,... 15。

$('#parent1').click(function () {
    if ($('#parent1').is(':checked')) {
        $('input[type="checkbox"]').attr('checked', true);
    } else {
        $('input[type="checkbox"]').attr('checked', false);
    }
});

1 个答案:

答案 0 :(得分:3)

尝试使用.prop()代替.attr() behavior of .attr() 不一致。

$('#parent1').change(function () {
    $('input[type="checkbox"]').prop('checked', this.checked);
});

<强> Demo Fiddle