如何从Java servlet返回JSON对象.
以前在使用servlet执行AJAX时,我返回了一个字符串.是否有需要使用的JSON对象类型,或者只是返回一个看起来像JSON对象的String,例如
String objectToReturn = "{ key1: 'value1', key2: 'value2' }";
Run Code Online (Sandbox Code Playgroud) 下面是我尝试appendTo使用AJAX源代码处理jQuery自动完成功能.
我有多个问题,希望能够帮助许多其他正在努力理解使用和AJAX源实现自动完成的正确方法的人.
1)source: function(request, response) {...}
这是做什么的?为什么需要它.
2)function(data){ response($.map (data, function(obj) {返回数据的格式是什么?我意识到数据是JSON格式的,但有什么意义.map呢?有必要这样做吗?有好处吗?
图3a)当使用appendTo和renderItem,是有必要具有上述success数据返回?
3b)或者,根据上面的数据,你如何正确使用appendTo和renderItem来改变你检索值的格式和显示?
$(function() {
$( ".find_group_ac" ).autocomplete({
minLength: 1,
source: function(request, response) {
$.ajax({
url: "welcome/search/",
data: { term: $(".find_group_ac").val()},
dataType: "json",
type: "POST",
success: function(data){ response($.map
(data, function(obj) {
return {
label: obj.name + ': ' + obj.description,
value: obj.name,
id: obj.name
};}));}
});
}
}).data( "autocomplete" )._renderItem = function( ul, item ) { …Run Code Online (Sandbox Code Playgroud) 我正在查看自动完成教程,我有几个问题:http://jqueryui.com/demos/autocomplete/#option-disabled
$( "#tags" )
// don't navigate away from the field on tab when selecting an item
.bind( "keydown", function( event ) {
if ( event.keyCode === $.ui.keyCode.TAB &&
$( this ).data( "autocomplete" ).menu.active ) {
event.preventDefault();
}
})
.autocomplete({
minLength: 0,
source: function( request, response ) {
// delegate back to autocomplete, but extract the last term
response( $.ui.autocomplete.filter(
availableTags, extractLast( request.term ) ) );
},
focus: function() {
// prevent value inserted on focus
return …Run Code Online (Sandbox Code Playgroud)