【问题标题】:CodeIgniter - How to set default value to unchecked for radio buttons/checkboxes while using set_radio and set_checkbox?CodeIgniter - 如何在使用 set_radio 和 set_checkbox 时将单选按钮/复选框的默认值设置为未选中?
【发布时间】:2011-01-01 04:38:06
【问题描述】:

我想我在这里遗漏了一些简单的东西,但我一生都无法弄清楚。

如果验证失败,我正在使用 set_radio() 和 set_checkbox() 方法返回它们的值,就像这样

<input type="radio" name="gender" value="male" <? if(!isset($thankyou)) { echo set_radio('gender', 'male'); } ?>/>;Male
<br />
<input type="radio" name="gender" value="female" <? if(!isset($thankyou)) { echo set_radio('gender', 'female'); } ?>/>;Female

我在其他地方还有另一个更大的复选框。一切正常,但默认情况下,第二个单选按钮被选中,对于复选框,它们都被默认选中。

如果我没有 set_radio / set_checkbox ,默认情况下不会选中它们,这正是我想要的。

将第三个参数添加到 set_radio() 即。 set_radio('gender','male',false) 也没有任何区别。

谁能解释一下这个问题?

非常感谢!

【问题讨论】:

    标签: forms codeigniter input checkbox radio-button


    【解决方案1】:

    我只能说这种方法对我来说很好用:

    <input type="radio" name="category_visibility" value="1" <?php echo set_radio('category_visibility', '1', TRUE); ?> /> Visible
    <input type="radio" name="category_visibility" value="0" <?php echo set_radio('category_visibility', '0', FALSE); ?> /> Hidden
    

    您的问题可能与form_validation 库有关,请尝试为这些字段设置规则(如果您实际上不需要验证它们,则为空):

    $this->form_validation->set_rules('category_visibility', 'Visibility', '');
    

    【讨论】:

      【解决方案2】:

      感谢 Cinnamon 为我指明了正确的方向,我发现了问题所在。 问题是 set_rules 仅在 validate 函数中设置,因此在加载默认表单页面时,这些规则还不存在。

      我在加载表单视图的默认函数中复制了 set_rules,现在一切正常。

      现在我需要简化验证规则,因为它们出现了两次,一次在加载视图的函数中,一次在验证函数中......

      【讨论】:

        猜你喜欢
        • 2021-02-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-09-19
        • 2012-02-28
        • 1970-01-01
        • 2020-08-10
        • 2021-01-06
        相关资源
        最近更新 更多