代码之家  ›  专栏  ›  技术社区  ›  rob.m

如何选中并禁用复选框?

php
  •  0
  • rob.m  · 技术社区  · 6 年前

    我试过:

    <input disabled='disabled' 
    checked='checked' 
    type='checkbox' 
    name='checkTema[]' 
    value=".$cat->cat_ID."> ".$cat->name."<br>"
    

    但当我把表格寄出去的时候,这并没有价值

    更新

    感谢你的评论 another SO question ,但我不确定该如何应用此技巧,尝试了以下操作,但未发送值

    echo "<input type='hidden' name='checkTema[]' value='1' >";
    echo "<input type='checkbox' checked='checked' disabled='disabled' name='checkTema[]' value=".$cat->cat_ID."> ".$cat->name."<br>";
    
    4 回复  |  直到 6 年前
        1
  •  0
  •   Bhaghyasandar    6 年前

    在onclick事件中尝试返回false

     <input 
         onclick="return false"
        checked='checked' 
        type='checkbox' 
        name='checkTema[]' 
        value='.$cat->cat_ID.'> ".$cat->name."<br>" 
    
        2
  •  0
  •   Blue    6 年前

    如果需要发布禁用的复选框,我建议在以下之前使用隐藏输入:

    <input type="hidden" name="checkbox_disabled" value="<?php echo $checkbox_value; ?>" /> <== Checked and disabled
    

    然后在php代码中,您可以简单地检查:

    if ($_POST['checkbox']) {
      //Checkbox wasn't disabled on submission
    } else {
      //Fallback to using the disabled value:
      $disabledVal = $_POST['checkbox_disabled'];
    }
    

    此外,您可以在提交之前简单地取消对表单所有元素的禁用:

    $('form').submit(function() {
        $(this).find('input').attr('disabled', false);
    });
    

    this question/answer 有关如何进行此操作的详细信息。

        3
  •  0
  •   Bhoomi Patel    6 年前

    请尝试以下代码:

    <input disabled='disabled' checked='checked' type='checkbox' name='checkTema[]' value="<?php echo $cat->cat_ID;?>"><?php echo $cat->name;?> 
    
        4
  •  0
  •   rob.m    6 年前

    谢谢你的评论,我已经找到了解决办法 another SO question

    然后我的代码更改为:

    echo "<input type='hidden' name='checkTema[]' value=".$cat->cat_ID." >";
    echo "<input type='checkbox' checked='checked' disabled='disabled'> ".$cat->name."<br>";