2016-11-23 2 views
0

私は現在、多項選択問題のためにmongoにデータを保存し、正しい答えをマークします。mongoで正しい答えを question.options.option1.check = "on"のように保存します。ユーザーが編集するためにmongoからデータを抽出した後にHTML(ejsを使用)でチェックボックスの値を表示する方法は?

「編集」ページに移動すると、mongoの特定のレコードがejsで「質問」として取得され、編集可能なフィールドの値をquestion.questionまたはquestion.optionsとして簡単に入力できます。 option1.textなどですが、以前にチェックされたチェックボックスにもマークを付けることができます。以下はチェックボックスの例です。

<input id=opt1 type="checkbox" name="check1" > 

私はそれが動作しません <input id=opt1 type="checkbox" name="check1" <%=question.options.option1.check%> >を使用する場合、私はまた、これはどちらか動作しません<input id=opt1 type="checkbox" name="check1" checked="<%=question.options.option1.check%>">を試してみました。しかし、属性に "checked" = "ここに値がないか値がない"と指定すると、それは間違っています。

編集ページで適切なチェックボックスをチェックする正しい方法は何ですか?

答えて

1

入力タイプのチェックボックスは、値を割り当てない場合でも、チェックされた属性をtrueとみなします。

だから、あなたはそれがあなたのために働いていた場合、私に教えてください

<input id="opt1" type="checkbox" name="check1" <%= question.options.option1.check ? "checked" : "" %> /> 

ような何かをする必要があるかもしれません。条件は<% =%> EJSタグ内に評価することができなかった場合、あなたはそれを表示する前に別の変数に条件付きと保存性を評価する必要がある場合があります

<% let checked = question.options.option1.check ? "checked" : "" %> 
<input id="opt1" type="checkbox" name="check1" <%= checked %> /> 
+0

甘い、最初のものは働いていました。だから "?"他人として行動する? <%= question.options.option1.check? "checked": ""%> – user856984

+1

?変数に値を代入するための 'if'のようになります: このように使用します: 'let variableToStoreValue = condition? valueIfTrue:valueIfFalse; ' – adonike

関連する問題