2016-12-07 16 views
0

ある私がチェックされている線の色を変更するのonchangeイベントで多くのチェックボックスを持っている場合、チェックボックスでは動作しませんれるonchange:が複数のチェック

<input type="checkbox" onchange="cocheCommande($(this))" name="${NAME_SELECTION}" value="<%=command.getCdeId()%>" /> 

function cocheCommande(chk) 
{ 
    alert("test cocheCommande"); 
    var tr=chk.closest('tr'); 

    if (chk.is(':checked')) 
    { 
     tr.css('background','#33EE33'); 
     tr.nextUntil("tr.entete","tr").css('background','#FFFF33'); 
    } 
    else 
    { 
     tr.css('background','#D0EED0'); 
     tr.nextUntil("tr.entete","tr").css('background','#EEEED0'); 
    } 
} 

私はすべてを確認するか、オフにすることを可能にする機能を持っています。しかし、私が使用すると、すべてがチェックされてもonchangeイベントは決して呼び出されません。 なぜですか?そしてどうしたらいいですか?

+1

を –

+0

イベントをトリガーすることがあります:http://stackoverflow.com/questions/2490825/how-to-trigger-event-in-javascript –

答えて

0

他にも述べたように、htmlテンプレートでは$を使用できません。あなたは、しかし、あなたのonchangeハンドラへの引数としてthisを渡すことができます。

HTML:

<input onchange="change(this)" type="checkbox" /> 

JS:あなたは属性に$(this)を使用することはできません

function change(elem) { 
    var element = $(elem); 
    console.log(element.next()) 
} 

https://plnkr.co/edit/dx8GoJxHwKa52VFCkn2G?p=preview

+0

私は1つ(前と同じように)ではなく、私はすべての機能を同時にチェックすると、onchangeは決して呼び出されません。 – Grichka

+0

それは別の問題です:)あなたはおそらく "すべて選択" – Fissio

関連する問題