I need some help on an autocomplete, when I do a search everything works fine if the item is in the list, I get the ID and return it in the dedicated input.
But is there a way to return a code 9998 if the search fails?
The jquery part :
$input_idenseigne=$('div.id_enseigne span.cell-sub-wrapper span.cell-input input');
$input_enseigne= $('div.enseigne span.cell-sub-wrapper span.cell-input input');
var getItems = function(term, callback) {
loading = true;
$.ajax( {
type: 'GET',
url: "XXX",
dataType: "json",
data: {
term: term
},
success: function( data ) {
loading = true;
callback($.map(data, function ( item ) {
return {
value: item[0],
label: item[1]
}
}));
},
error: function ( data ) {
alert('error');
}
});
};
var fillFields = function(item) {
};
$('input.ui-autocomplete-input').each(function() {
$(this).blur(function(){
var keyEvent = $.Event("keydown");
keyEvent.keyCode = $.ui.keyCode.ENTER;
$(this).trigger(keyEvent);
if ($(this).val().length >= 3) {
getItems($(this).val(), function(items) {
if (items.length) { }
});
}
}).autocomplete({
source: function(request, response) {
getItems(request.term, response);
},
minLength: 3,
search: function( event, ui ) { },
select: function( event, ui) {
event.preventDefault();
$ ('div.id_enseigne span.cell-sub-wrapper span.cell-input input').val(ui.item.value);
$ ('input.ui-autocomplete-input').val(ui.item.label);
}
});
});
And the html part :
<div class="answers answers-list">
<div class="element even groupingCols OneColumnEl hasError id_enseigne ">
<span class="cell-sub-wrapper cell-legend-above">
<span class="cell-text cell-sub-column"></span>
<span class="cell-input cell-sub-column">
<input type="text" name="ans3414" id="ans3414" value="" size="25">
</span>
</span>
</div>
<div class="element even groupingCols OneColumnEl hasError enseigne ">
<span class="cell-sub-wrapper cell-legend-above">
<span class="cell-text cell-sub-column"></span>
<span class="cell-input cell-sub-column">
<input type="text" name="ans3415" id="ans3415" value="" size="25" class="ui-autocomplete-input" autocomplete="off"/>
</span>
</span>
</div>
</div>
Thanks you
I tried different methods with the following code for example, but it does not work:
,
error: function ( data ) {
alert('error');
}
successmethod just check and see if data is empty. If it is, alert whatever error message you like.