0
POST를 사용하여 선택한 항목의 id 값을 search.php 파일에 전달하려고합니다. GET을 사용하면 제대로 작동하지만 POST를 사용하면 작동하지 않습니다.jQuery UI autocomplete 결과에서 POST를 통한 값 전달
$(function() {
$(".search").autocomplete({
source: function(request, response) {
$.ajax({
url: "/_inc/autocomplete.php",
dataType: "json",
data: {
q: request.term
},
success: function(data) {
response(data);
console.log(data);
}
});
},
minLength: 2,
select: function(event, ui) {
//alert('selected: ' + ui.item.name);
var id = ui.item.id;
$.post("/search.php", {"id": id});
$(location).attr('href', '/search.php');
}
}).data("ui-autocomplete")._renderItem = function(ul, item) {
if(item.label == 'No Match Found'){
return $("<li>")
.data("item.autocomplete", item)
.append(item.value)
.appendTo(ul)
.css("cursor", "default");
} else {
return $("<li>")
.data("item.autocomplete", item)
.append(("<a>" + item.id + " - " + item.name + "</a>"))
.appendTo(ul);
}
};
});
데이터 소스가 데이터베이스에서 뽑아 PHP를 사용하여 JSON으로 변환됩니다 : 여기
는 내가 가지고있는 코드입니다.
"작동하지 않음"은 큰 진술입니다. 무슨 일이야? 안 그랬어? 자바 스크립트 오류가 발생합니까? 데이터가 PHP로 이동합니까? PHP AJAX 파일에서'var_dump ($ _ POST);'를하면 어떨까요? –
데이터가 PHP 페이지로 이동하지 않습니다. 'var_dump ($ _ POST);'는'array (0) {}'를 제공합니다. JS 에러가 없습니다. @cale_b –
@KumaranS GET과 POST에서 전달 된 매개 변수를 모두 포함하기 때문에 서버에서'$ _REQUEST'를 사용할 수 있습니다. 또는 GET 또는 POST 중 어느 것을 사용하는지 결정할 수 있습니다. 둘 다 사용하는 것은 좋지 않습니다. –