如何将选择表单中隐藏输入字段的循环值传递给Ajax

时间:2017-09-26 19:36:24

标签: php jquery ajax loops

我觉得这很简单?

我有一个带有隐藏输入字段的选择表单来携带循环ID。我希望将选定的选项VALUE和隐藏的输入字段VALUE传递给Ajax函数。

当我在选择字段中将value='$id_static[$k]'作为选项放置时,Id会正确循环。

当我在隐藏输入中传递值时,它只传递' 1'无论选择哪一行。

请参阅下面的简明代码。

  <form>
       <div class='select-style'>
  <select  onChange='update(this.value)' id='gcc' name='gcc' class='form-control'>                        
        <option value='i2000'>i 2000</option>
        <option value='$id_static[$k]'>i 3000</option>
        <option value='i4000'>i 4000</option>
  </select>  
      <input  type='hidden'  id='g' name='g' value='$id_static[$k]'>
  </div>           
  </form>

注意我的一个选择选项中我有$ id_static [$ k]作为值。我只用作测试... Ajax进程完美循环。问题是我在隐藏的领域需要它。

这是我的循环以防你需要看到它

  while ($stmt->fetch()){
      $id_static[] = $id_ai;      
      foreach($id_static as $k => $v){    
   } 

以下是我的JQuery Ajax:代码

  <script>
    function update(gcc , g) {
      var idgap = $('#g').val();           
             jQuery.ajax({                   
                type: 'POST',
                 url: 'gap2.php',
                 dataType: 'json',
                 data:  {  gcc : gcc , idgap : idgap } ,                    
                 success: function(response){                
                 console.log(response);                     
                 jQuery('.response').html(response);                    
                }
           });     
        } 
     </script>

好的,我在Interim做过的。将我的值与1合并,,分隔<Select><option value='i3000,$id_static[$k]'>i3000</option>,并在我的PHP中拆分值,如下所示。

    $str = $_POST['gcc'];
    $split = explode("," , $str);

    $gcc =   $split[0];
    $g = $split[1];

必须是使用AJAX for循环的更好方法。我唯一的目标是在不刷新PAGE的情况下更改PAGE。下一个问题是将PHP结果echo带到ajax而不更改每行的<div>

1 个答案:

答案 0 :(得分:0)

您忘记将PHP标记放在要插补的字符串周围。

 <form>
       <div class='select-style'>
  <select  onChange='update(this.value)' id='gcc' name='gcc' class='form-control'>                        
        <option value='i2000'>i 2000</option>
        <option value='<?php $id_static[$k] ?>'>i 3000</option>
        <option value='i4000'>i 4000</option>
  </select>  
      <input  type='hidden'  id='g' name='g' value='<?php $id_static[$k] ?>'>
  </div>           
  </form>