将输入类型的文本从引导导航栏发布到codeigniter控制器

时间:2019-02-12 23:38:06

标签: twitter-bootstrap codeigniter post bootstrap-4 codeigniter-3

我有这个代码

                <form class="form-inline my-2 my-lg-0">
                    <?php echo form_open('users/modificaAzienda2'); ?>
                    <input type="hidden" name="usernameHidden" id="usernameHidden" value="<?php echo $username; ?>">
                    <input class="form-control mr-sm-2" type="text" placeholder="Cerca Azienda" aria-label="Search" id="completaAziende" name="completaAziende">
                    <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Cerca</button>
                    <?php echo form_close(); ?>
                </form>

enter image description here

当我放东西并提交帖子时,请求不会发送到('users / modificaAzienda2'),而是转到另一个URL,如下图所示:

enter image description here

现在,如果代码没有格式class =“ form-inline my-2 my-lg-0”

所有数据均已发布,控制器将打开正确的视图:)

1 个答案:

答案 0 :(得分:2)

您不得在以下表单中使用表单:https://www.w3.org/TR/html5/forms.html#the-form-element

但是您这样做是因为Codeigniter的echo form_open()创建了一个表单标签-请参见form_open()-您可以在父标签<form class="form-inline my-2 my-lg-0">中找到它。第二种形式将被忽略。

通过将类作为属性添加到echo form_open()来解决该问题:

$attr = array('class' => 'form-inline my-2 my-lg-0');
echo form_open('users/modificaAzienda2', $attr);
//....
<?php echo form_close(); ?>