2017-07-27 40 views
0

說明: 我想,當按鈕用戶點擊這是while循環裏面那麼這個按鈕,輸入字段值(兩者值)的值取由ajax發送給php。 如果我的代碼有問題,那麼糾正它或告訴馬某些方法來做到這一點。如何當按鈕被點擊獲取來自不同領域的AJAX數據

<?php 

    echo '<form id ="aa" method="post">'; 
    echo '<input id="csv" name="csv" type="file" />'; 
    echo '</form>'; 

    while($row=mysql_fetch_array($result_1)) { 
     $pin=$row['board_name']; 
     $name=$row['board_name']; 

     echo'<div>'; 
     echo $row['board_name']; 
     echo '<button type="submit" form="aa" class="a" name="aabb" value='.$name.'>Save</button>'; 
     echo '</div>'; 
    } 
?> 

<script> 
    $(document).ready(function() { 
     $(".a").click(function(evt){  
      evt.preventDefault(); 
      var formData = new FormData($(this)[0]); 
      $.ajax({ 
       url: 'pin_insert.php', 
       type: 'POST', 
       data: formData, 
       async: false, 
       cache: false, 
       contentType: false, 
       enctype: 'multipart/form-data', 
       processData: false, 
       success: function(response) { 
        $(".text").html(response); 
       } 
      }); 
      return false; 
     }); 
    }); 
</script> 
+0

你爲什麼用php echo寫html代碼? – Abid

回答

0

我不使用jQuery所以請原諒任何mistooks但也許正如submit按鈕是,即使他們提交它不會被列入FORMDATA一個值,因此它需要被附加到形式之外以下發送的數據。

<script> 
    $(document).ready(function() { 
     $(".a").click(function(evt){  
      evt.preventDefault(); 
      var formData = new FormData(document.getElementById('aa')); 

       /* Add the value from the button */ 
       formData.append('aabb', evt.target.value); 

      $.ajax({ 
       url: 'pin_insert.php', 
       type: 'POST', 
       data: formData, 
       async: false, 
       cache: false, 
       contentType: false, 
       enctype: 'multipart/form-data', 
       processData: false, 
       success: function(response) { 
        $(".text").html(response); 
       } 
      }); 
      return false; 
     }); 
    }); 
</script> 
0

輸入欄和按鈕值是相同的,所以我做了這樣

<?php 

     echo '<form id ="aa" method="post">'; 
     echo '<input id="csv" name="csv" type="file" />'; 
     echo '</form>'; 

     while($row=mysql_fetch_array($result_1)) { 


      echo'<div>'; 
      echo $row['board_name']; 
      echo '<button type="button" form="aa" class="a" name="aabb" value='.$row['board_name'].' onclick="abc(this.value)">Save</button>'; 
      echo '</div>'; 
     } 
    ?> 

    <script> 
    function abc(boardname){ 
       var inputvalue= $("#csv").val(); 

       var boardname= boardname; 
       $.ajax({ 
        url: 'pin_insert.php', 
        type: 'POST', 
        data: {'boardname': boardname , 'inputvalue': inputvalue}, 
        async: false, 
        cache: false, 
        contentType: false, 
        enctype: 'multipart/form-data', 
        processData: false, 
        success: function(response) { 
         $(".text").html(response); 
        } 
       }); 
      } 

    </script> 

可以從pin_insert.php頁面$ _ POST [「boardname」] $ _ POST [」獲得的價值inputvalue']

+0

不,輸入字段和按鈕的值不相同。用戶可以輸入任何文件 –

+0

,所以你想讓文件的值和按鈕的值正確嗎? – Abid

+0

我已編輯相應 – Abid