有没有办法让选择器用来调用我的小部件?
例如,如果我的选择器是$("输入[标题* ='成本中心']"),我希望我的小部件能够看到"输入[标题* ='成本中心']"。
我发现这篇帖子Accessing .selector within a JQuery UI Widget可能会暗示如何完成,但无法开始理解它。如果这是一个答案,我该如何实现它?我的小部件名称是PNC_ERA.simpleDialogListSP。
答案 0 :(得分:1)
检查一下:
<强> HTML 强>
<div id='test'></div>
<div class='test'></div>
<强>的widget 强>
$(function () {
$.widget("test.testwidget", {
_create: function () {
this.element.text('Selector: ' + this.options.selector)
},
});
}(jQuery));
以及您已找到的answer中的代码
// Save the original factory function in a variable
var testFactory = $.fn.testwidget;
// Replace the function with our own implementation
$.fn.testwidget = function(obj){
// Add the selector property to the options
$.extend(obj, { selector: this.selector });
// Run the original factory function with proper context and arguments
return testFactory.apply(this,arguments);
};
<强>用法强>
$(document).ready(function() {
$('#test').testwidget({});
$('.test').testwidget({});
});
这是有效的JSFiddle