Well, nor propagation nor z-indexes seem to solve the problem.
The only way I found is to set other fields (that's all except for one being auto-completed) to disabled mode.
So, when auto-complete box is opened, I set all other inputs to disabled, and reset them once the box closes:
$("#venue_name").autocomplete({
minLength: 2,
source: venueData,
open: function(event, ui) { // disable other inputs
$("input#venue_address").attr("disabled", "disabled");
$("input#venue_cross_street").attr("disabled", "disabled");
$("input#venue_city").attr("disabled", "disabled");
},
close: function(event, ui) { // re-enable other inputs
$("input#venue_address").removeAttr("disabled");
$("input#venue_cross_street").removeAttr("disabled");
$("input#venue_city").removeAttr("disabled");
}
});
You can improve the code above, say, by putting elements to be disabled into array etc, but the basic logic stays the same: disable elements, so that android doesn't highlight them when auto-complete box is activated, and re-enable them once auto-complete box is out.