Làm cách nào để lấy dữ liệu từ jQuery AJAX trong php?

Trong hướng dẫn này, bạn sẽ tìm hiểu cách gửi và nhận dữ liệu từ máy chủ web thông qua Ajax thông qua phương thức HTTP GET hoặc POST bằng jQuery

Các phương thức




jQuery post[] Demo




    
        Name: 
        Comment: 
        
    
    

3 và




jQuery post[] Demo




    
        Name: 
        Comment: 
        
    
    

4 của jQuery

Các phương thức





jQuery post[] Demo




    
        Name: 
        Comment: 
        
    
    

3 và




jQuery post[] Demo




    
        Name: 
        Comment: 
        
    
    

4 của jQuery cung cấp các công cụ đơn giản để gửi và truy xuất dữ liệu không đồng bộ từ máy chủ web. Cả hai phương thức đều khá giống nhau, ngoại trừ một điểm khác biệt lớn —




jQuery post[] Demo




    
        Name: 
        Comment: 
        
    
    

3 thực hiện các yêu cầu Ajax bằng cách sử dụng , trong khi




jQuery post[] Demo




    
        Name: 
        Comment: 
        
    
    

4 thực hiện các yêu cầu Ajax bằng cách sử dụng

Cú pháp cơ bản của các phương thức này có thể được đưa ra với

$. get[URL, dữ liệu, thành công]; . bài đăng [URL, dữ liệu, thành công];

Các tham số trong cú pháp trên có ý nghĩa như sau

  • Tham số URL bắt buộc chỉ định URL mà yêu cầu được gửi tới
  • Tham số dữ liệu tùy chọn chỉ định một bộ chuỗi truy vấn [i. e. cặp khóa/giá trị] được gửi đến máy chủ web cùng với yêu cầu
  • Tham số thành công tùy chọn về cơ bản là chức năng gọi lại được thực thi nếu yêu cầu thành công. Nó thường được sử dụng để lấy dữ liệu trả về

Ghi chú. Các phương thức HTTP GET và POST được sử dụng để gửi yêu cầu từ trình duyệt đến máy chủ. Sự khác biệt chính giữa các phương pháp này là cách dữ liệu được truyền đến máy chủ. Xem hướng dẫn về phương thức GET và POST để biết giải thích chi tiết và so sánh giữa hai phương thức này

Thực hiện yêu cầu GET với AJAX bằng jQuery

Ví dụ sau sử dụng phương thức jQuery





jQuery post[] Demo




    
        Name: 
        Comment: 
        
    
    

3 để thực hiện một yêu cầu Ajax tới "date-time. php" bằng phương thức HTTP GET. Nó chỉ lấy ngày và giờ được trả về từ máy chủ và hiển thị nó trong trình duyệt mà không cần làm mới trang





jQuery get[] Demo




    

Content of the result DIV box will be replaced by the server date and time

Load Date and Time

Đây là "ngày-giờ" của chúng tôi. php" chỉ xuất ra ngày và giờ hiện tại của máy chủ

Mẹo. Nếu bạn gặp bất kỳ khó khăn nào khi chạy cục bộ các ví dụ này trên PC của mình, vui lòng xem hướng dẫn về tải jQuery Ajax để biết giải pháp

Bạn cũng có thể gửi một số dữ liệu đến máy chủ với yêu cầu. Trong ví dụ sau, mã jQuery tạo một yêu cầu Ajax tới "tạo bảng. php" cũng như gửi một số dữ liệu bổ sung đến máy chủ cùng với yêu cầu





jQuery get[] Demo




    Enter a Number: 
    Show Multiplication Table
    

Đây là tập lệnh PHP của "tạo bảng. php" chỉ cần xuất bảng cửu chương cho số được người dùng nhập khi nhấp vào nút

 0]{
    echo "";
    for[$i=0; $i

Thực hiện yêu cầu POST với AJAX bằng jQuery

Các yêu cầu POST giống hệt với các yêu cầu GET trong jQuery. Vì vậy, nói chung, phương pháp nào bạn nên sử dụng





jQuery post[] Demo




    
        Name: 
        Comment: 
        
    
    

3 hoặc




jQuery post[] Demo




    
        Name: 
        Comment: 
        
    
    

4 về cơ bản phụ thuộc vào yêu cầu của mã phía máy chủ của bạn. Nếu bạn có một lượng lớn dữ liệu được truyền đi [e. g. dữ liệu biểu mẫu], bạn cần sử dụng POST, vì GET có giới hạn nghiêm ngặt đối với việc truyền dữ liệu





jQuery post[] Demo




    
        Name: 
        Comment: 
        
    
    

Đây là "bình luận hiển thị" của chúng tôi. php" chỉ xuất dữ liệu do người dùng nhập vào

";
echo "Here's the comment what you've entered: $comment";
?>

Bây giờ bạn đã học cách thực hiện các thao tác Ajax khác nhau như tải dữ liệu, gửi biểu mẫu, v.v. sử dụng jQuery không đồng bộ. Trước khi kết thúc chương này, hãy xem thêm một ví dụ cổ điển về Ajax sẽ chỉ cho bạn cách điền danh sách thả xuống của tiểu bang hoặc thành phố dựa trên tùy chọn được chọn trong danh sách thả xuống quốc gia bằng cách sử dụng jQuery

Hàm gọi lại được thực thi nếu yêu cầu thành công. Bắt buộc nếu cung cấp

$.get[ "ajax/test.html", function[ data ] {

$[ ".result" ].html[ data ];

alert[ "Load was performed." ];

}];

0, nhưng bạn có thể sử dụng

$.get[ "ajax/test.html", function[ data ] {

$[ ".result" ].html[ data ];

alert[ "Load was performed." ];

}];

1 hoặc

$.get[ "ajax/test.html", function[ data ] {

$[ ".result" ].html[ data ];

alert[ "Load was performed." ];

}];

2 làm trình giữ chỗ

  • loại dữ liệu

    Loại.

    Loại dữ liệu mong đợi từ máy chủ. Vỡ nợ. Đoán thông minh [xml, json, tập lệnh, văn bản, html]

  • phiên bản thêm. 1. 12 và 2. 2

    • cài đặt

      Loại.

      Một tập hợp các cặp khóa/giá trị cấu hình yêu cầu Ajax. Tất cả các thuộc tính ngoại trừ

      $.get[ "ajax/test.html", function[ data ] {

      $[ ".result" ].html[ data ];

      alert[ "Load was performed." ];

      }];

      3 là tùy chọn. Có thể đặt mặc định cho bất kỳ tùy chọn nào với $. cài đặt ajax[]. Xem danh sách đầy đủ tất cả các cài đặt. Tùy chọn loại sẽ tự động được đặt thành

      $.get[ "ajax/test.html", function[ data ] {

      $[ ".result" ].html[ data ];

      alert[ "Load was performed." ];

      }];

      4

  • Đây là một hàm Ajax tốc ký, tương đương với

    1

    2

    3

    4

    5

    6

    1

    Hàm gọi lại

    $.get[ "ajax/test.html", function[ data ] {

    $[ ".result" ].html[ data ];

    alert[ "Load was performed." ];

    }];

    5 được truyền dữ liệu được trả về, dữ liệu này sẽ là phần tử gốc XML, chuỗi văn bản, tệp JavaScript hoặc đối tượng JSON, tùy thuộc vào loại MIME của phản hồi. Nó cũng được chuyển trạng thái văn bản của phản hồi

    Kể từ jQuery 1. 5, hàm gọi lại

    $.get[ "ajax/test.html", function[ data ] {

    $[ ".result" ].html[ data ];

    alert[ "Load was performed." ];

    }];

    5 cũng được chuyển a [trong jQuery 1. 4, nó đã được thông qua đối tượng

    $.get[ "ajax/test.html", function[ data ] {

    $[ ".result" ].html[ data ];

    alert[ "Load was performed." ];

    }];

    7]. Tuy nhiên, do các yêu cầu JSONP và tên miền chéo GET không sử dụng XHR, nên trong những trường hợp đó, các tham số

    $.get[ "ajax/test.html", function[ data ] {

    $[ ".result" ].html[ data ];

    alert[ "Load was performed." ];

    }];

    8 và

    $.get[ "ajax/test.html", function[ data ] {

    $[ ".result" ].html[ data ];

    alert[ "Load was performed." ];

    }];

    9 được chuyển cho lệnh gọi lại thành công là không xác định

    Hầu hết các triển khai sẽ chỉ định trình xử lý thành công

    1

    2

    3

    4

    $.get[ "ajax/test.html", function[ data ] {

    $[ ".result" ].html[ data ];

    alert[ "Load was performed." ];

    }];

    Ví dụ này tìm nạp đoạn mã HTML được yêu cầu và chèn đoạn mã đó vào trang

    Đối tượng jqXHR

    Kể từ jQuery 1. 5, tất cả các phương thức Ajax của jQuery đều trả về một siêu đối tượng của đối tượng

    80. Đối tượng jQuery XHR này, hay "jqXHR," được trả về bởi 
    81 thực hiện giao diện Promise, cung cấp cho nó tất cả các thuộc tính, phương thức và hành vi của một Promise [xem Đối tượng bị trì hoãn để biết thêm thông tin]. 
    82 [đối với thành công], 
    83 [đối với lỗi] và 
    84 [đối với hoàn thành, cho dù thành công hay lỗi; được thêm vào trong jQuery 1. 6] các phương thức lấy một đối số hàm được gọi khi yêu cầu kết thúc. Để biết thông tin về các đối số mà hàm này nhận được, hãy xem phần của tài liệu 
    85

    Giao diện Promise cũng cho phép các phương thức Ajax của jQuery, bao gồm

    81, xâu chuỗi nhiều lệnh gọi lại 
    87, 
    88 và 
    89 trên một yêu cầu và thậm chí gán các lệnh gọi lại này sau khi yêu cầu có thể đã hoàn thành. Nếu yêu cầu đã hoàn thành, cuộc gọi lại sẽ được kích hoạt ngay lập tức

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    8

    Thông báo Khấu hao

    Các phương thức gọi lại

    
    
    
    
    jQuery get[] Demo
    
    
    
    
        Enter a Number: 
        Show Multiplication Table
        
    
    
    90,
    
    
    
    
    jQuery get[] Demo
    
    
    
    
        Enter a Number: 
        Show Multiplication Table
        
    
    
    91 và
    
    
    
    
    jQuery get[] Demo
    
    
    
    
        Enter a Number: 
        Show Multiplication Table
        
    
    
    92 đã bị xóa kể từ jQuery 3. 0. Bạn có thể sử dụng
    82, 
    83 và 
    84 để thay thế

    Ghi chú bổ sung

    • Do các hạn chế về bảo mật của trình duyệt, hầu hết các yêu cầu "Ajax" đều phải tuân theo cùng một chính sách gốc;
    • Nếu một yêu cầu với jQuery. get[] trả về một mã lỗi, nó sẽ bị lỗi âm thầm trừ khi tập lệnh cũng được gọi là mã lỗi toàn cầu. phương thức ajaxError[]. Ngoài ra, kể từ jQuery 1. 5, phương thức
      
      
      
      
      jQuery get[] Demo
      
      
      
      
          Enter a Number: 
          Show Multiplication Table
          
      
      
      96 của đối tượng

      $.get[ "ajax/test.html", function[ data ] {

      $[ ".result" ].html[ data ];

      alert[ "Load was performed." ];

      }];

      8 do jQuery trả về. get[] cũng có sẵn để xử lý lỗi
    • Các yêu cầu tập lệnh và JSONP không phải tuân theo các hạn chế về chính sách gốc giống nhau

    ví dụ

    Yêu cầu kiểm tra. trang php, nhưng bỏ qua kết quả trả về

    1

    
    
    
    
    jQuery get[] Demo
    
    
    
    
        Enter a Number: 
        Show Multiplication Table
        
    
    
    9

    Yêu cầu kiểm tra. php và gửi một số dữ liệu bổ sung [trong khi vẫn bỏ qua kết quả trả về]

    1

     0]{
        echo "";
        for[$i=0; $i
    8

    Truyền mảng dữ liệu đến máy chủ [trong khi vẫn bỏ qua kết quả trả về]

    1

     0]{
        echo "";
        for[$i=0; $i
    9

    Thông báo kết quả từ yêu cầu kiểm tra. php [HTML hoặc XML, tùy thuộc vào nội dung được trả về]

    1

    2

    3

    
    
    
    
    jQuery post[] Demo
    
    
    
    
        
            Name: 
            Comment: 
            
        
        
    
    
    0

    Thông báo kết quả từ yêu cầu kiểm tra. cgi với tải trọng dữ liệu bổ sung [HTML hoặc XML, tùy thuộc vào nội dung được trả về]

    1

    2

    3

    4

    
    
    
    
    jQuery post[] Demo
    
    
    
    
        
            Name: 
            Comment: 
            
        
        
    
    
    1

    Get the test.php page contents, which has been returned in json format [], and add it to the page.

    1

    2

    3

    4

    5

    
    
    
    
    jQuery post[] Demo
    
    
    
    
        
            Name: 
            Comment: 
            
        
        
    
    
    2

    Nhận một trang khác trên cùng một tên miền. Đầu ra để điều khiển cả dữ liệu được trả về và loại dữ liệu được trả về

    Làm cách nào để lấy dữ liệu bài đăng jQuery ajax trong php?

    Để thực hiện một yêu cầu Ajax bằng jQuery, bạn có thể thực hiện việc này bằng đoạn mã sau. /* Đính kèm trình xử lý gửi vào biểu mẫu */ $["#foo"]. submit[function[event] { var ajaxRequest; /* Dừng gửi biểu mẫu bình thường */ event. preventDefault[]; .

    Cách lấy dữ liệu từ jQuery ajax?

    Gửi yêu cầu Ajax .
    Thí dụ. Yêu cầu jQuery Ajax. $. ajax['/jquery/getdata', // url yêu cầu { thành công. function [data, status, xhr] { // hàm gọi lại thành công $['p']. nối thêm [dữ liệu]; .
    Thí dụ. Nhận dữ liệu JSON. .
    Thí dụ. phương thức ajax[]. .
    Thí dụ. Gửi yêu cầu POST

    Làm cách nào để tải dữ liệu từ ajax trong php?

    Cú pháp. $[bộ chọn]. load[URL,data,callback]; Tham số URL bắt buộc chỉ định URL bạn muốn tải. Tham số dữ liệu tùy chọn chỉ định một tập hợp các cặp khóa/giá trị chuỗi truy vấn để gửi cùng với yêu cầu.

    Làm cách nào để gọi API bằng ajax trong php?

    Mã AJAX. .
    Bước 1. Bước đầu tiên là lấy phương thức getElementById của phần tử nút
    Bước 2. Bước thứ hai là thêm một eventListener vào nút và cung cấp chức năng gọi lại cho nó
    Bước 3. Khởi tạo một đối tượng XHR bằng từ khóa mới
    Bước 4. Mở một đối tượng bằng chức năng mở

    Chủ Đề