2012-01-12 6 views
1

フォームの送信後にチェックボックスを選択するにはどうすればよいですか?私はCodeigniter User Guideでset_checkbox関数を見つけましたが、動作しません。ユーザー・ガイドからページリロード後のフォーム値の保持 - コード番号

フォームフィールドコードは

<input type="checkbox" name="mycheck" value="1" <?php echo set_checkbox('mycheck', '1'); ?> /> 
<input type="checkbox" name="mycheck" value="2" <?php echo set_checkbox('mycheck', '2'); ?> /> 

また、私はこれをGoogleで検索し、回避策のカップルを見つけたが、それらはCodeIgniterの以前のバージョンに基づいていました。フォームの検証には基づいていましたが、これは必須フィールドではないため、フォームには必要ありません。

フォームの送信後にチェックボックスのフィールド値を保持するにはどうすればよいですか?

更新日:この質問はフォームの検証とエラーに関するものではありません。私は、ページがリロードされた後にチェックボックスのフィールド値を保持したい。 jqueryは可能ですか?

+0

です。 'set_checkbox()' *はこれを処理する方法です。何か他のことが起こっているに違いありません。あなたは "それはうまくいかない"と精緻化できますか? –

+0

私のフォーム入力コードはユーザーガイドの例のようです。データベースに適切な値が設定されていますが、画面を更新するとすべての値が消えます。 – chowwy

+0

'set_checkbox()'は、フォームが送信された後にチェックボックスを再入力しますが、検証に失敗します。手動でページを更新した後にチェックボックスに再入力しません。 –

答えて

3

CIセッションを使用してセッション内にフォームデータを格納し、ページをリフレッシュするときにPOSTが送信されない場合に取得できます。したがって、論理は

If($this->input->post()){ 
    /* ...load session class 

    ... Fetch form data as u like 

    ... Store form data in a session variable */ 
}else{ 
    /* ... Load session class 
    ... Check if session variable exist 
    ... Load form data from session variable and set the form values */ 
} 
+0

よろしくお願いいたします。私はこれを試してみるつもりですが、概念的には私にとって意味があります。 – chowwy