php - 如何从多个表单中获取输入隐藏值?

标签 php jquery forms codeigniter

我有无限多个动态表单,仅包含具有提交按钮的单个输入隐藏字段,并尝试获取单击按钮的表单的值。我不知道为什么这没有发生。

我读过这些How to get the Specific Form Field value using JQuerySubmit a specific form with JQuery Ajax但还是没有结果。

Controller

public function order()
    {
        $data['fruits'] = $this->catering_model->getrecess('Recess Fruits','Category Recess');

        $this->load->view('ChoiceLaunch/order',$data);
    }   

order.php

  <?php $i=0;
            if(!empty($fruits)){
                        ?>
              <div class="col-sm-12"><h3 align="center"><?php echo $fruits[0]->catsubname; ?></h3><br>
                                        <!-- while($res_item=mysqli_fetch_array($cat_item_sql)){ -->
                  <?php $i=0;
                    foreach($fruits as $lrd1){ 
                        $i++;                   
                  ?>
                   <form method="post" action="">

                    <div class="col-sm-4 col-md-3">
                            <div class="thumbnail">
                              <a href="<?php echo base_url(); ?>Choice/orderdetial"><img style="height: 177px;width: 200px;" src="<?php echo 'http://localhost:8080/catering/uploads/'.$lrd1->picturename;?>" alt="..."></a>
                              <div class="caption protitle">
                                <a href="#"><p style="height: 12px;width: 200px;margin-top: 9px;margin-bottom:29px;"><?php echo $lrd1->itemname; ?></p></a><br> 

                                <input type="hidden" name="quantity" id="quantity<?php echo $i;?>" value="<?php echo $lrd1->itemname; ?>" size="2">
                                <button type="submit" id="send" class="btn btn-info">Add To Order</button><br>
                                <?php echo '$'.$lrd1->price; ?>

                              </div>
                            </div>
                          </div>
                            <?php
                        }}
                            ?>
                          </form>



                 </div>
<script>
$('#send').click(function(){
  //var selection= $(this).attr('id'); 

// $( "[id='quantity']" ) .each(function(){
     // alert($(this).val());
// }); //running bt showing all at once


$( "form:input[type=hidden]" ) .each(function(){
     alert($(this).val());
})
});
</script>

我正在使用 CodeIgniter。

最佳答案

第一:ID 必须是唯一的,因此请使用类

<button type="submit" class="btn btn-info send">Add To Order</button><br>

在js中

<script>
$('form').on('submit',function(e){
  e.preventDefault();
  var hiddenVal = $(this).find('input[type="hidden"]').val();
  alert(hiddenVal);
});
</script>

在 php 中,我认为您关闭了 </form>在错误的地方

<?php $i=0;
foreach($fruits as $lrd1){ 
  $i++;                   
  ?>
    <form method="post" action="">
      <div class="col-sm-4 col-md-3">
        <div class="thumbnail">
           <a href="<?php echo base_url(); ?>Choice/orderdetial"><img style="height: 177px;width: 200px;" src="<?php echo 'http://localhost:8080/catering/uploads/'.$lrd1->picturename;?>" alt="..."></a>
           <div class="caption protitle">
               <a href="#"><p style="height: 12px;width: 200px;margin-top: 9px;margin-bottom:29px;"><?php echo $lrd1->itemname; ?></p></a><br> 
               <input type="hidden" name="quantity" id="quantity<?php echo $i;?>" value="<?php echo $lrd1->itemname; ?>" size="2">
               <button type="submit" class="btn btn-info send">Add To Order</button><br>
               <?php echo '$'.$lrd1->price; ?>
            </div>
        </div>
    </div>
   </form>
  <?php
}
  ?>

如果您有多个隐藏字段,则需要使用.each()

<script>
    $('form').on('submit',function(e){
      e.preventDefault();
      $(this).find('input[type="hidden"]').each(function(){
         alert($(this).val());
      });

    });
    </script>

关于php - 如何从多个表单中获取输入隐藏值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44143095/

相关文章:

php - 使用 db 进行页面翻译

jquery - 使用 Unslider 连续播放幻灯片

php - 数据库检查后模态不显示

php - 添加时间时更改日期

php - 选择某些MySQL字段并使用php显示它们

php - 获取表中多个隐藏表单值的值

javascript - 如果屏幕缩小,则更改 <h1> 的文本

javascript - Bootstrap 使用自定义 CSS 复选框折叠

验证后 PHP 表单为空

jquery - 单击按钮时如何更改表单的操作属性