我是菜鸟。改造了一个Jquery插件,大致结构如下:
(function ($) {
"use strict";
//构造函数
var Combobox = function (element, options) {
this.$element = element;
...
};
//方法
Combobox.prototype = {
constructor: Combobox
, load: function (keyword) {
...
}
...
, getvalue: function () {
return this.$element.val();
}
};
$.fn.combobox = function (option) {
return this.each(function () {
var $this = $(this)
, data = $this.data('combobox')
, options = typeof option == 'object' && option;
if (!data) { $this.data('combobox', (data = new Combobox(this, options))); }
if (typeof option == 'string') { data[option](); }
});
};
//默认值
$.fn.combobox.defaults = {
menu: '<ul class="typeahead-long dropdown-menu"></ul>'
, item: '<li><a href="#" class="dropdown-item"></a></li>'
, datasource: ''
};
})(jQuery);
在Html中是这样调用的:
$(document).ready(function () { $('.combobox').combobox(); });它工作的很好。除了这个需求:
我想在html通过JavaScript中获得getvalue函数的返回值:
var value = $("#sn").combobox('getvalue');
alert(value);
alert总是显示[object Object]。
请教高手:我哪里做错了?
能否给个详细的解答,叩首!!!