私は非常に不慣れなjQueryプログラマーで、わかりやすいスクリプトでバグを見つけることができません。助けてもらえますか?jQueryの.data()はブール値を返しません。どうして?
状態が初期値と異なる場合は、チェックボックスを強調したいと思います。その初期値はdata-init
属性として格納されます。ここでは受け入れ答えで
<td><input checked data-init id="controls-0-modeU" name="controls-0-modeU" type="checkbox" value="y"></td>
<td><input id="controls-1-modeU" name="controls-1-modeU" type="checkbox" value="y"></td>
:Retrieve boolean data from data attribute in jqueryがあります:「jQueryの.data()
方法は、ブールと数値を認識についてスマートですし、彼らのネイティブ型に変換してチェックし、未チェックの入力のために生成されたHTMLは次のようになります "。それが私が望むものです。
私のスクリプトはで始まる:
$(document).ready(function(){
$("td input:checkbox").change(function(){
var $init = $(this).data("init")
しかし$init
の値が(最初は未確認の入力用)undefined
または空の文字列(最初にチェックするため)のいずれかです。どちらも偽と評価されます。代わりに真実/偽になっていないのはなぜですか?
自分自身を持ち上げ重いを行う必要があるでしょうチェックボックスに「data-init」属性がありません... –
と複数のチェックボックスがあり、コードが不完全です。 – Riddler
あなたの 'data-init'には値がありませんでした。 'checked'チェックボックスの空の属性ですか?あなたは何を達成したいですか? –