我想在同一水平已有功能“_select”是添加“setInputDataId”功能,在插件的js http://twitter.github.io/typeahead.js/releases/latest/typeahead.bundle.js文件,而无需实际修改文件本身。 所以,我想知道我怎么可以添加新的功能,我将不胜感激帮助。
现有代码插件:
_select: function select(datum) {
this.input.setQuery(datum.value);
this.input.setInputValue(datum.value, true);
this._setLanguageDirection();
this.eventBus.trigger("selected", datum.raw, datum.datasetName);
this.dropdown.close();
_.defer(_.bind(this.dropdown.empty, this.dropdown));
},
新的代码我想:
_select: function select(datum) {
this.input.setQuery(datum.value);
this.input.setInputValue(datum.value, true);
this.input.setInputDataId(datum.raw);
this._setLanguageDirection();
this.eventBus.trigger("selected", datum.raw, datum.datasetName);
this.dropdown.close();
_.defer(_.bind(this.dropdown.empty, this.dropdown));
},
同时也可作为“setInputDataId”功能本来不是在插件,我想也添加此功能。
函数体是:
setInputDataId: function setInputDataId(raw) {
this.$input.attr('data-id',raw.id);
},
请转到http://twitter.github.io/typeahead.js/examples/在Chrome的控制台选项卡中做到这一点:
console.dir($.fn.typeahead)
现在展开节点功能,那么“”,那么第二闭合那里你可以看到事先键入的内容。 现在点击事先键入的内容原型那里你可以看到_select方法。 我怎么能修改此功能。
层次:
function
<function scope>
Closure (second)
Typeahead
prototype
_select