【问题标题】:Within form the value of <input type="button"> not submitting在表单中 <input type="button"> 的值未提交
【发布时间】:2015-03-19 11:16:35
【问题描述】:

我已经搜索过这个主题,但没有人和我遇到同样的问题。

我有一个具有特定值的按钮。提交表单时,我希望将值发送到控制器以便保存在数据库中。发送的所有其他信息都是准确的,但与按钮的值无关,保存的是 0。

这是为什么呢?提前致谢!

<div class="container">
    <?php $row = $query->row(); ?>
        <div class="current"> <?php echo $row->text;?> </div>
            <form method="post" action="<?php echo base_url();?>questionnaire/process">         

               <div class="form-group">
                    <label> Número Pergunta </label> 
                    <input type="text" class="form-control" name="question" value=" <?php echo $row->text;?>">
               </div>

                <div class="btn-group btn-group-justified" role="group" aria-label="...">
                    <div class="btn-group" role="group">
                        <input type="button" name = "choice" value= "1" class="btn btn-default">
                    </div>

                    <div class="btn-group" role="group">
                        <input  type="button" name = "choice" value= "2" class="btn btn-default">
                    </div>
                </div>

                <input type="submit" value="Próxima" />
            </form>

  </div>

【问题讨论】:

    标签: php forms model-view-controller


    【解决方案1】:

    请参阅以下链接中的注释

    “注意:在表单中,只有使用按钮本身提交表单时,才会提交按钮及其值。”

    http://www.w3schools.com/tags/att_button_value.asp

    如果您特别需要按钮,我建议您将输入更改为单选按钮列表并将其样式化为按钮

    希望对你有帮助

    【讨论】:

      【解决方案2】:

      按钮仅用于触发操作,不与表单数据一起提交。 检查这个:http://www.w3.org/TR/html401/interact/forms.html#h-17.5

      解决方案: 您可以使用 Radio OR Dropdowns 来选择提交您的选择值

      电台:

      <input  type="radio" name = "choice" value= "1" class="btn btn-default">
      <input  type="radio" name = "choice" value= "2" class="btn btn-default">
      

      下拉菜单:

      <SELECT name = "choice">
      <option value="1">1</option>
      <option value="2">2</option>
      </SELECT>
      

      【讨论】:

        【解决方案3】:

        正如 Fox909a 所说,只有点击的提交按钮才会发送值。

        如果 javascript 是一个例外添加,您可以将值保存在隐藏字段中:

        <div class="btn-group btn-group-justified" role="group" aria-label="...">
            <div class="btn-group" role="group">
                <input onclick="this.form.choice.value=this.value;" type="button" value= "1" class="btn btn-default">
             </div>
        
             <div class="btn-group" role="group">
                <input onclick="this.form.choice.value=this.value;" type="button"  value= "2" class="btn btn-default">
              </div>
         </div>
         <input type="hidden" name="choice" id="choice"/>
        

        实时示例:http://jsfiddle.net/mLxs9j27/(示例中未隐藏选择字段,因此您可以看到它正在工作)

        【讨论】:

          猜你喜欢
          • 2012-03-30
          • 2012-06-10
          • 1970-01-01
          • 2013-09-19
          • 2012-07-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-10-15
          相关资源
          最近更新 更多