html & lt; input>无法将值传递给URL,除非使用codeigniter's input_form


html <input> unable to pass value to URL unless using codeigniter's input_form

使用codeigniter的form_helper创建表单搜索

<?php echo form_open(site_url( 'lab/hasil_rawat_jalan'), array( 'method'=>'get')) ?>
<div class="form-group">
  <label class="sr-only" for="value">Search</label>
  <?php echo form_input( 'value', $this->input->get('value'), 'type="text" class="form-control" id="value" placeholder="Search..."') ?>
</div>
<input class="btn btn-default btn-sm" type="submit" value="Go">
</form>

问题是如果我改变

<?php echo form_input( 'value', $this->input->get('value'), 'type="text" class="form-control" id="value" placeholder="Search..."') ?>

到this(这意味着正常的输入标签)

<input type="text" class="form-control" id="value" placeholder="Search..." value="<?php echo $this->input->get('value');?>">

我不能得到任何值在我的url,我错过了什么吗?

如果你不明白我的问题,请问。谢谢^ ^

如果需要值,请添加name属性。

<input name="value" type="text" class="form-control" id="value" placeholder="Search..." value="<?php echo $this->input->get('value');?>" >
       ^          ^

在代码点火器中,文本框名称中的第一个参数。

<?php echo form_input( 'value', $this->input->get('value'), 'type="text" class="form-control" id="value" placeholder="Search..."') ?>
                       ^      ^

这里的意思是创建和输入value名称的文本,$this->input->get('value')这个值:

 form_input( 'value', $this->input->get('value')...)

但在您的情况下,value成为属性,而不是name attribute的名称:

<input type="text" class="form-control" id="value" placeholder="Search..." value="<?php echo $this->input->get('value');?>">