だから私は製品のドロップダウン選択があります。 そして、入力がチェックされたときにクラスを追加できるようにしたいだけです。私はCSSであなたが入力を認識することができることを知っている:チェックが、私はさらなる開発のための余分が必要です。 これは私のコードの一部です
for (var i=0,length=variant.options.length; i<length; i++) {
var radioButton = $productForm.find(".swatch[data-option-index="" + escape(i) + ""] :radio[value="" + variant.options[i].replace(/"/g,"\"") +""]");
if (radioButton.length) {
radioButton.get(0).checked = true;
}
}
そして私はこの方法でクラスを追加しようとしました:
if (radioButton.length) {
radioButton.get(0).checked = true.addClass("selected");;
}
そして、このように
if (radioButton.length) {
radioButton.get(0).checked = true;
radioButton.get(0).addClass("selected");
}
これらの方法のどちらも機能しません、なぜ私は理解できません。
回答:
回答№1は1彼らはあなたのようにjavascriptとjqueryを混ぜ合わせていません - はいjquery は javascriptを使用していますが、jqueryオブジェクトに適用される独自のメソッドがあります。 .addClass()
.
したがって、このコード:
var radioButton = $productForm.find(...
jqueryオブジェクトを返します。
radioButton.get(0)
元のDOMオブジェクトを返します。 .addClass()
方法。
あなたは使うことができます .addClass
使うことなく .get(0)
次のように:
radioButton.addClass("selected");