2016-11-29 42 views
0

我一直在嘗試使用php和ajax更改查詢。這是怎麼一回事呢使用ajax和php更改基於文本框更改的查詢

  1. 我有一個下拉式選單,更改時,它將被所選擇的數據複製到我使用javascript像這樣實現了文本框。

    $(document).ready(function() { 
        $("#animaloption").change(function() { 
         $('#animalfilter').val($("#animaloption").val()); 
        }); 
    }); 
    

然後

  • 我需要檢查是否與animalfilter的ID輸入文本框被改變,然後使用AJAX我做到了查詢它不知道是否因爲我不能獲取收益

    $(document).ready(function() { 
        $("#animaloption").change(function() { 
         $('#animalfilter').val($("#animaloption").val()); 
         var animal= $('#animalfilter').val($("#animaloption").val()); 
         $.ajax({ 
         url: "ajax/test.php", 
         type: "post", 
         data: animal, 
         success: function (response) { 
          $("#kind").html(response);    
         } 
         }); 
        }); 
    }); 
    
  • 這是正確的

    輸入與id = kind不顯示任何內容。

    在我的test.php

    <?php 
        $a = "SUCCESS"; 
        return $a; 
    ?> 
    

    請幫助你們。

    感謝。

    +0

    首先查詢它,你需要使用'方法:「POST」'而不是'type:「post」'。添加'失敗'回調可能表明一些錯誤。我總是引用這個文檔 - http://api.jquery.com/jquery.ajax/ – Chainat

    +0

    小寫'post'很好,我想你會發現它不需要'POST'工作。讓我們看看你的表格。 – Rasclatt

    回答

    1

    你必須去的一對夫婦的問題在這裏,我會注意到關注的領域:

    的jQuery:

    $(document).ready(function() { 
        // Not necessary, but better to use .on() here 
        $("#animaloption").on('change',function() { 
         // Use $(this) instead, grabs the selected value. No sense in 
         // capturing the same event value when you have it in this event already 
         var animal = $(this).val(); 
         // Assign value here to field 
         $('#animalfilter').val(animal); 
         // Start ajax 
         $.ajax({ 
          // Make sure this is the correct path 
          url: "ajax/test.php", 
          type: "post", 
          data: animal, 
          success: function(response) { 
           $("#kind").html(response); 
          } 
         }); 
        }); 
    }); 
    

    /ajax/test.php

    <?php 
    $a = "SUCCESS"; 
    # You have to echo, not return 
    echo $a; 
    # Try print_r() for sure-fire results testing 
    print_r($_POST); 
    

    如果這些更改沒有解決它,看到你的表單html將是必要的。

    1

    我需要檢查是否有animalfilter的ID輸入文本框被改變,然後用ajax

    對於2

    $(document).ready(function() { 
        $("#animalfilter").change(function() { 
         $('#animalfilter').val($("#animaloption").val()); 
         // var animal= $('#animalfilter').val($("#animaloption").val()); //<-- i highly doubt you need this 
         var animal= $('#animalfilter').val();      //<-- rather this 
         $.ajax({ 
          url: "ajax/test.php", 
          type: "post", 
          data: animal, 
          success: function (response) { 
            $("#kind").html(response);    
          } 
         }); 
        }); 
    });