C#のファイルの背後にあるASP.NETコードでチェックボックスを作成しています。ページにコントロールを追加する前に属性値を追加しています。したがって、ASPはチェックボックスを囲むスパンとテキストのラベルに属性を追加しています。javascript関数に要素を渡して最初の子にアクセスする方法
<span data-bind="visible: showCheckBox(this)">
<input id="" type="checkbox" name="ctl00$MainContent$SecondaryForm$ctl00" value="1">
<label for="">Outside Source</label>
</span>
私はKnockout.jsで書かshowCheckBox()
と呼ばれる機能を持っている:それはこのようになります。直前のドロップダウンリストで選択した項目の値に基づいて、ターゲットチェックボックスを表示するかどうかを決定します。たとえば、ドロップダウンリストで選択した項目の値が1の場合、対応する値1のターゲットチェックボックスが表示されます。この関数は次のようになります。
function showCheckBox(span) {
var value = span.firstChild.value;
return value == reason();
}
reason()
は、リスト項目ダウン選択ドロップの値を保持するビューモデルの変数です。 私が何をしていても、チェックボックスの値を正しく送信できません。常に定義されていません。
申し訳ありませんが、私は少し混乱しています。あなたが苦労しているのはどれですか? 'span.firstChild'は未定義ですか?または 'span.firstChild.value'? DOMオブジェクトである 'span'はまさに何ですか? – Andrei
たぶん私は道を離れていますが、 "this"というキーワードを使って関数にspan DOM要素を送ります。私はチェックボックスの値を抽出し、それとreason()のビューモデル変数の比較結果を返します。 – wizloc
私はノックアウトに詳しくはありませんが、このコードをデバッグしましたか?私は完全にはわからない 'スパン'あなたはそれが – Andrei