如何通过绑定到文本字段(输入组)并允许来自下拉列表(input-group-btn)

时间:2018-06-12 17:38:37

标签: php mysql edit

我们使用phpipam

我们发现,如果直接将数据输入子网字段,则不会遵循内置的CIDR计算,并且可以将重叠的子网输入数据库。

我们希望在维护系统架构的同时直接拒绝用户输入,并允许用户通过下拉列表输入。

html中显示的子网编辑页面

the subnet edit page displayed in html

        <?php  if (!$showDropMenuFull){ ?>
            <input type="text" class="form-control input-sm input-w-200" name="subnet" placeholder="<?php print _('subnet in CIDR'); ?>"  value="<?php print @$cidr; ?>" <?php if ($readonly) print "readonly"; ?>>
        <?php } else { ?>
                    <div class="input-group input-w-200">
                            <input type="text" class="form-control input-sm input-w-200" name="subnet" placeholder="<?php print _('subnet in CIDR'); ?>" value="<?php print @$cidr; ?>">
                            <?php if (strlen($dropdown_menu)>0) { ?>
                            <div class="input-group-btn">
                                    <button type="button" class="btn btn-default btn-sm dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Select <span class="caret"></span></button>
                                    <ul class="dropdown-menu dropdown-menu-right dropdown-subnets">
                                            <?php print $dropdown_menu; ?>
                                    </ul>
                            </div>
                            <?php } ?>
                    </div>
                    <?php } ?>

1 个答案:

答案 0 :(得分:0)

尝试将readonly属性添加到input。它应该阻止用户编辑input文本,但脚本应该继续能够编辑,并且它将在表单中提交。

看起来像这样:

<input type="text" class="form-control input-sm input-w-200" name="subnet" placeholder="<?php print _('subnet in CIDR'); ?>" value="<?php print @$cidr; ?>" readonly="readonly">

您也可以使用readonly而不使用值,但如果您使用的是XHTML,请记住禁止使用属性缩小,因此必须完成。