【问题标题】:Php: How can I check if a checkbox is checked without submitting the form?Php:如何在不提交表单的情况下检查复选框是否被选中?
【发布时间】:2020-10-08 22:29:08
【问题描述】:

如何在不先提交表单的情况下检查复选框是否被选中? 我想制作一个结帐页面,并且有一个帐单地址表格和一个送货地址表格。当我选中“收货地址与我的账单地址相同”的框时,我希望收货地址表格消失。我想在不重新加载页面的情况下执行此操作。这可能吗?如果是,如何?如果没有,是否有不同的方法可以使用 php 获得相同的结果?

提前致谢!!

【问题讨论】:

  • 好吧,你可以忘记 PHP - 你需要使用 Javascript。为复选框分配一个事件侦听器来监控它的选中状态 - 使用事件处理函数来隐藏/显示表单,具体取决于复选框状态
  • PHP 在服务器上运行,Javascript 需要在客户端运行。

标签: php html forms checkbox


【解决方案1】:

您可以根据您的问题使用 jquery 来实现这一点,但它实际上不是您真正需要的 php,而是 jquery。

Jquery 道具

$(document).ready(function(){
    $('input[type="checkbox"]').click(function(){
        if($(this).prop("checked") == true){
            $("#result").html("Checkbox is checked.");
        }
        else if($(this).prop("checked") == false){
            $("#result").html("Checkbox is unchecked.");
        }
    });
});

你也是你jquery选择器

$(document).ready(function(){
    $('input[type="checkbox"]').click(function(){
        if($(this).is(":checked")){
            $("#result").html("Checkbox is checked.");
        }
        else if($(this).is(":not(:checked)")){
            $("#result").html("Checkbox is unchecked.");
        }
    });
});

【讨论】:

    【解决方案2】:

    不提交表单意味着前端验证。

    在你的触发器上,尝试使用这个:

    document.getElementById("your-id").checked
    

    例子:

    function formTrigger()
    {
       let checkBox = document.getElementById("myCheck");
       if (checkBox.checked == true){
         console.log("it's checked.");
       }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-10
      • 1970-01-01
      • 2019-01-12
      相关资源
      最近更新 更多