Lệnh gọi trao đổi phải nằm trên phần tử được chọn không có trên nhãn
<label class="col-sm-2 form-control-label">Codigo Productor (*)</label>
<select name="vendedor_codigo onchange="productorInfo(this.value)">
Nhưng nó cũng xảy ra với tôi bạn có thể không hoàn toàn hiểu quá trình. Lệnh gọi ajax của bạn sẽ không được kích hoạt khi trang tải nên bit này:
<select id="ajax-vendedor" name="vendedor_nombre">
<?php foreach ($ajax_productor_result as $dd_productor_display) : ?>
<option placeholder="Seleccione codigo" value="<?= $dd_productor_display['vendedor_nombre']; ?>">
<?= $dd_productor_display['vendedor_nombre']; ?>
</option>
tôi nghĩ là đang đưa ra cho bạn những cảnh báo về biến không xác định (trừ khi bạn đang đặt $ajax_productor_result
ban đầu theo một cách nào đó)
Các phản hồi từ ajax thường được vẽ bằng .js thông qua thành công:hàm
(result) {
$("#ajax-vendedor").html(result);
}
từ giao diện của điều này mặc dù - trừ khi có thêm mã mà những gì đã được đăng, bạn đang chuyển hàm .html () một mảng hoặc các hàng cơ sở dữ liệu nên nó sẽ không bao giờ hiển thị bất kỳ thứ gì.
vì vậy bạn cần phải 1) vẽ một lựa chọn không có tùy chọn nào trong đó khi tải trang (hoặc tùy chọn mặc định nếu bạn có chúng) 2) trả về một phản hồi mà hàm thành công có thể sử dụng, ví dụ:một chuỗi json mà jquery có thể phân tích cú pháp3) định dạng dữ liệu trong jquery thành <options>
và sau đó sử dụng .html()
chức năng cập nhật select4) nếu bạn muốn điều này xảy ra khi trang tải ban đầu, sau đó thêm lệnh gọi sẵn sàng tài liệu vào productorInfo(id)
chức năng - điều này sẽ có liên quan nếu bạn đang đặt giá trị lựa chọn ban đầu theo một cách nào đó (vì vậy nó có thể không liên quan đến bạn)