2016-11-17 10 views
-2

チェックされた値が属性値と等しくないチェックボックスを選択できます。2つの属性が異なる場合に選択

だから私は<input type="checkbox" originalValue="false" checked="checked"> または<input type="checkbox" originalValue="true">を持っているかもしれないので、ユーザーはそれをチェックしなかったので、それは違う。

私はページ上に数千もあるかもしれないので、ユーザーが元の値から変更したものがほしいだけです。だから、もともとチェックボックスがチェックされていて、そのチェックボックスは選択解除されていました。

また、チェックされている場合はチェックを外してからもう一度チェックしてください。そのチェックボックスは不要です。

これを行うためのエレガントなjQueryの方法はありますか?

+4

私はあなたの担当者との誰かが解決にあなたの試みを表示するために、任意のコードを使用せずに質問を投稿したことは非常に驚いています問題? – melancia

+0

申し訳ありませんが、なぜこれが広すぎますか?かなり私に特定のようだ。チェックされた値が属性と同じでないチェックボックスを選択します。 – griegs

+0

ソリューションをコーディングする方法がたくさんあるかもしれませんが、それは広すぎると分類できますか?あなたが(コード)に苦しんでいるものを私たちに与えるなら、より絞り込まれたものを提案する方が簡単でしょう。 – melancia

答えて

2

物事を行うためのエレガントな方法は、常にあります - filterを使用して反対をフィルタリング:

var changedElements = $("input:checkbox").filter(function() { 
    var originalValue = $(this).attr("originalValue"); //unsure if this is auto-parsed to a bool, will have to check 
    var originalBoolValue = originalValue === "true"; 

    return originalBoolValue != this.checked; 
}); 
+0

ありがとうございます。少なくともあなたは質問 – griegs

+0

を理解しました。これは絶対にありがとうございます。 – griegs

関連する問題