私はdjangoを初めて使用し、フォームライブラリが含まれていることを知りませんでした。チェックボックスを表示する動的フォームをhtmlとjavascriptで記述しました。クリックすると、より多くの入力フィールドが表示されます。
djangosの組み込みメソッドを使用してフォームのデータにアクセスする方がはるかに簡単でクリーンなため、すでに作成したコードをdjangoのフォームライブラリを使用するように適応させる簡単な方法があるかどうか疑問に思っています。
また、フォームを動的にしたい場合は、フォームセットを使用する必要がありますか、それともフォームライブラリにそれらの機能がありますか?
フォームライブラリを使用するために変換したいコードは次のとおりです。
<script language="javascript">
function ifChecked(id, id2){
var ele = document.getElementById(id);
var ele2 = document.getElementById(id2);
if(ele.checked){
ele2.style.display = "block";
}
else{
ele2.style.display = "none";
}
}
function ifCheckedLine(id, id2){
var ele = document.getElementById(id);
var ele2 = document.getElementById(id2);
if(ele.checked){
ele2.style.display = "inline";
}
else{
ele2.style.display = "none";
}
}
</script>
<body>
<form name="myform" action="resultsget" method = "get" >
<fieldset>
<input type="checkbox" value="total_money" id = "money_check" name="check" onchange="javascript:ifChecked('money_check','money');" /> Filter by Total Money</br>
<div id="money" style="display:none" name="option">
<input type="checkbox" value="more" id="money_condition" onchange="javascript:ifCheckedLine('money_condition', 'money_text');" name="condition"/> <label for="condition" > > </label>
<div id = "money_text" style="display:none" >
<input type="text" id="money_box" name="money_name" value="lower limit" />
</div></br>
<input type="checkbox" value="less" id="money_condition1" onchange="javascript:ifCheckedLine('money_condition1', 'money_text1');" name="condition"/> <label for="condition1"> < </label>
<div id = "money_text1" style="display:none;" >
<input type="text" id="money_box1" name="money_name1" value="upper limit" />
</div>
</div>
</fieldset>
<input type="submit" value="Submit" />
</form>
また、フォーム情報を読み取るために、views.pyファイルに何を入力する必要があるのか知りたいです。
ありがとう!!