0
POSTを使用して、選択した項目のid値をsearch.phpファイルに渡そうとしています。 GETを使用しても正常に動作しますが、POSTを使用すると動作しません。jQuery UIオートコンプリート結果の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に変換される:ここ
は、私が持っているコードです。
「うまくいきません」は大きな文です。何が起こっていますか?起きていません? JavaScriptエラーが出ますか?データはPHPに送られますか? PHP AJAXファイルで 'var_dump($ _ POST);'を実行するとどうなりますか? –
データはPHPページには送られません。 'var_dump($ _ POST);'私に 'array(0){}'を与えます。JSエラーはありません。 @cale_b –
@KumaranS GETとPOSTから渡されたパラメータの両方を含んでいるので、サーバ上で '$ _REQUEST'を使うことができます。両方を使うのはベストプラクティスではありません –