我想知道是否有一种方法可以在jsViews中获取触发onBeforeChangeEvent函数的当前元素。我想得到它正在处理的当前元素,对它做一些额外的jQuery工作。
一个基本的例子如下:
$.views.helpers({
onAfterChange: function (ev)
{
//want to get element instance right here as an example.....
if (!PageSettings.cancelUpsert && ev.type == "change")
{
//do somthing to element that is currently being processed.
}
}
});
我搜索了返回的对象,但是可以找到一种稳定的方法来获取元素。我们非常感谢任何有关何处观看的想法或提示。谢谢!
答案 0 :(得分:1)
如果您要查找数据链接元素,例如输入:<input data-link="..." />
,其更改事件触发了更改,您可以从this.linkCtx.elem
或ev.target
获取该元素。
更一般地说,this
指针是正在更改的view
对象。
视图对象上有许多辅助方法,可用于访问该视图中的不同元素。例如,this.contents("someSelector")
将返回一个jQuery对象,该对象选择该视图中的顶级元素,this.contents(true, "someSelector")
将应用选择器来过滤视图中的所有元素(深度搜索不仅仅是顶级)。
(您可以使用选择器"*"
获取所有元素)