我有一个烧瓶应用程序,它使用jquery autosuggest进行用户输入。这适用于任何桌面设备,但不适用于移动设备(Android,iOS)。这是代码:
C++
以下是表格:
<link href="//code.jquery.com/ui/1.10.2/themes/smoothness/jquery-ui.css" rel="Stylesheet"></link>
<script src="//code.jquery.com/jquery-2.2.0.min.js"></script>
<script src="//code.jquery.com/ui/1.10.2/jquery-ui.js" ></script>
<script type=text/javascript>
$SCRIPT_ROOT = {{ request.script_root|tojson|safe }};
</script>
<script type="text/javascript">
$(function() {
$("input[id^='autocomplete_temp']").autocomplete({
source:function(request, response) {
$.getJSON("{{url_for('autocomplete')}}",{
query: request.term,
pagetype: 'temperatures',
}, function(data) {
response(data.matching_results);
});
},
minLength: 2,
select: function(event, ui) {
console.log(ui.item.value);
}
});
})
</script>
最后,python函数:
<div class="input-group">
<form action="{{ url_for('parse_request', type='results_temperature') }}" method="POST">
<input type="text" id="autocomplete_temp1" class="form-control" placeholder="City 1" aria-describedby="basic-addon1" name="city1"></input>
<input type="text" id="autocomplete_temp2" class="form-control" placeholder="City 2" aria-describedby="basic-addon1" name="city2"></input>
<input type="text" id="autocomplete_temp3" class="form-control" placeholder="City 3" aria-describedby="basic-addon1" name="city3"></input>
<p class="text-center">
<button type="submit" class="btn btn-success btn-lg">Submit!</button>
</p>
</form>
</div>
正如我所说,它在桌面上都有效,但是当我在手机上输入任何内容时,都不会显示自动建议列表。
在发布问题之前我尝试过的事情:
@app.route('/autocomplete', methods=['GET'])
def autocomplete():
q = request.args.get('query')
pagetype = request.args.get('pagetype')
if pagetype == 'temperatures':
df = pd.read_csv(path_temp, sep="\t", index_col=[0])
filtered = filter(lambda x: q in x.lower().decode("utf-8"), df.index)
return jsonify(matching_results=filtered)
我尝试导入jquery CDN的不同版本(1.12.0),即:
code.jquery.com/ui/1.12.0/themes/smoothness/jquery-ui.css
code.jquery.com/ui/1.12.0/jquery-ui.js
code.jquery.com/jquery-3.1.1.min.js
这些都没有帮助或让我更接近解决这个问题。非常感谢任何提示。 干杯