【发布时间】:2011-11-16 11:41:23
【问题描述】:
我已经解决了所有部分,可以使用谷歌应用引擎加载 javascript 变量。现在我陷入了自动完成自定义数据中。这是我的脚本
var friends=[]
{% for name in user_names %}
vals={"id":"{{ name.id }}","name":"{{ name.user }}"}
friends.push(vals)
{% endfor %}
$(function() {
alert(friends);
$( "#suggest1" ).autocomplete({
minLength: 0,
source: friends,
focus: function( event, ui ) {
$( "#suggest1" ).val( ui.item.name );
return false;
},
select: function( event, ui ) {
$( "#suggest1" ).val( ui.item.name );
$( "#suggest1-id" ).val( ui.item.id );
return false;
}
})
.data( "autocomplete" )._renderItem = function( ul, item ) {
return $( "<li></li>" )
.data( "item.autocomplete", item )
.append( "<a>" + item.name + "</a>" )
.appendTo( ul );
};
});
和html代码:
<div class="section" id="user-section">
<input id='suggest1' />
<input type="hidden" id="suggest1-id"/>
</div>
friends 是包含好友及其 ID 的对象列表。现在这个自动完成功能不起作用。谁能帮我找出我在哪里做错了。
【问题讨论】:
-
您尝试过jquery UI Autocomplete 小部件吗?
-
向我们展示您的代码并解释您为调试它所做的工作。我们不可能仅根据描述找出问题所在。
-
@Nick - 我在后端尝试做的是制作 javscript 数组,然后将其发送到前端。
friend_selector=[] for user in self.user.friends_name: try: ss=str(user) except: ss=''.join((c for c in unicodedata.normalize('NFD', user) if unicodedata.category(c) != 'Mn')) friend_selector.append(ss) friends_name='var friend-selector=['+",".join(ss)+'];' self.render(u'index',friends_name=[]) -
@Kevin P- 是的,我正在使用 jquery UI 自动完成功能。
-
@bhaskaragr29 请不要尝试将代码塞进评论中 - 使用更多详细信息更新您的问题。并告诉我们你看到了什么结果,以及你为调试它做了什么。
标签: javascript python google-app-engine encoding autocomplete