我对socialegine模块开发很新。我想在我的一个表单上使用多个自动填充。我没有显示多个自动完成的问题但是当从自动完成中选择选项时出现问题。
我已经看到autocompet.js使用id toValues
来显示autocomlte中的选定选项。因此,如果一个表单上只有一个自动完成,那么我们可以将一个元素作为toValues
来显示所选的值。但是,如果我们有多个自动完成,那么如何分别显示每个自动完成的所选项目?使用以下代码进行自动完成
en4.core.runonce.add(function() {
new Autocompleter.Request.JSON('to', '<?php echo $this->url(array('module' => 'localspots', 'controller' => 'lookup', 'action' => 'city'), 'default', true) ?>', {
'minLength': 2,
'delay' : 1,
'selectMode': 'pick',
'autocompleteType': 'message',
'multiple': false,
'className': 'message-autosuggest',
'filterSubset' : true,
'tokenFormat' : 'object',
'tokenValueKey' : 'label',
'injectChoice': function(token){
console.log(token.type);
var choice = new Element('li', {'class': 'autocompleter-choices', 'html': token.photo, 'id':token.label});
new Element('div', {'html': this.markQueryValue(token.label),'class': 'autocompleter-choice'}).inject(choice);
this.addChoiceEvents(choice).inject(this.choices);
choice.store('autocompleteChoice', token);
},
onPush : function(){
if( $('toValues').value.split(',').length >= maxRecipients ){
$('to').disabled = true;
$('to').setAttribute("class", "disabled");
}
},
});
});