选中基于变量的复选框

时间:2016-10-18 15:33:06

标签: javascript php html html-form

我尝试创建一个库存表单,该表单以基于从URL传递的变量检查的单个项目开始。

假设我在这里得到了变量:     $StartingInv = $_GET["SInv"];

该变量(如果存在)将完全匹配输入列表之一的值,如下所示:

<input type="checkbox" class="inventory" name="order[]" value="IT1501"><label>Item IT1501 Name</label><br/>
<input type="checkbox" class="inventory" name="order[]" value="IT1502"><label>Item IT1502 Name</label><br/>

是否有某种方法可以在加载页面时将输入值与变量进行比较,以编程方式分配&#34;已检查&#34;标记

我想要做的是制作一个脚本,根据它的价值获取输入并分配一个选中的标签,但我不知道这是否可能。< / p>

或者,我可以在每个输入中加入这样的内容,但我不知道如何引用它。

<?php if ($VALUE_OF_THIS_FORM == $StartingInv) echo "checked='checked'"; ?>

2 个答案:

答案 0 :(得分:0)

您的替代方案已经足够好了,@adeneo会根据评论进行备份。但是,您也可以尝试使用jQuery:

var startingInv = "<?= $StartingInv ?>";
$(":checkbox").each(function() {
    if ($(this).val() == startingInv) $(this).prop("checked", true);
}

答案 1 :(得分:0)

您可以将PHP代码放在输入中:

<input type="checkbox" class="inventory" name="order[]" value="IT1501" <?php if($StartingInv == 'IT1501') echo 'checked'; ?>> <label>Item IT1501 Name</label><br/>
<input type="checkbox" class="inventory" name="order[]" value="IT1502" <?php if($StartingInv == 'IT1502') echo 'checked'; ?>><label>Item IT1502 Name</label><br/>