获取对象属性的jQuery插件方法

时间:2014-03-24 04:31:56

标签: javascript jquery

我正在使用以下标准构建一个jQuery扩展插件:

(function ($) {

    var version = "1.1.0";
    var active = false;

    $.fn.inputPicker = function (options) {

        return this.each(function () {

            if ($(this)[0].tagName !== 'DIV')
                throw new ReferenceError('mz.ui.dialog.dateTimePicker: Method works only on DIV types.');



            /// Label
            var labelObj = $("<label class='small'>Data Hora Inicial</label>");
            $(this).append(labelObj);


            /// Input
            var inputObj = $("<input type='datetime-local' class='form-control input-sm'></input>");
            $(this).append(inputObj);

             })
        });
    };

}(jQuery));

以下是我的称呼方式:

<div id='test'></div>

$('#test').inputPicker();

稍后在代码中我想获得输入字段中输入的数据,如:

$( '试验')inputPicker()getInputData();

实现这一目标的最佳方法是什么?我尝试过类似的事情:

this.getInputData = function () { 

return $(inputObj).val();
}

但是在调用函数时出错了。

有人可以帮我吗?提前谢谢......

1 个答案:

答案 0 :(得分:2)

您可以使用您添加的DOM结构和类名,使用另一种方法来获取这样的输入数据:

$.fn.getInputData = function() {
    return this.eq(0).find("input.input-sm").val();
}

这只能在jQuery对象中的第一个DOM元素上运行(因为它只返回一个值)。

所以,像你一样设置后:

$("#test").inputPicker();

然后您将检索如下数据:

var data = $("#test").getInputData();
相关问题