如何通过使用ajax动态附加表单字段值来检索查询结果?
<script>
$(document).ready(function() {
$("textbox").autocomplete({
source: function(query, response) {
$.ajax({
url: "/xxx/sample.cfc?method=queries&returnformat=json",
dataType: "json",
data: {
searchKeyword: query.term
},
success: function(result) {
response(result);
}
});
}
});
});
</script>
我已尝试过以下代码,但无法获得输出。这种方式是否正确?
如何通过将searchKeyword
传递给sample.cfc来获取记录?在sample.cfc中编写的逻辑是什么?
答案 0 :(得分:0)
也许您唯一的问题是您没有正确定位文本框。 将代码更改为
<input type="text" id="textbox">
<script>
$(document).ready(function() {
$("#textbox").autocomplete({
source: function(query, response) {
$.ajax({
url: "/xxx/sample.cfc?method=queries&returnformat=json",
dataType: "json",
data: {
searchKeyword: query.term
},
success: function(result) {
response(result);
}
});
}
});
});
</script>
正确地为我提交,使用firebug显示URL params(在输入字段后输入我的名字后):
方法查询
returnformat json
searchKeyword andrew
(注意:如果你在标签内,则必须将选择器更改为##文本框)
一个非常简单的 sample.cfc 只会将您的搜索关键字返回给您看起来像
component{
remote function queries() {
return url.searchKeyword;
}
}
除非这只是一个学习练习,否则我建议使用jquery小部件来保存你自己编写一个完整的自动完成程序。