如何将此元素作为锚标记传递给 javascript 函数
How pass this element as anchor tag to javascript function
这就是我们将 Url()
模型输入绑定到 knockout UI
的方式。
[anchor-tag] data-bind="attr: { href: Url()"
现在我想附加到 url 一些来自父元素的东西,所以我想将 "this"
元素传递给 js 文件。
[anchor-tag] data-bind="attr: { href: myFunction1(Url(), this)"
myFunction1 = function (url, obj) {
return url + "#" + $(obj).parents('li').attr('rankAbs');
}
当我在 myFunction1
中执行 $(obj)
时,我得到了 Window 对象。
而且我无法访问更多的父对象。
根据 documentation,“$element”是绑定应用到的当前 DOM 元素:
This is the element DOM object (for virtual elements, it will be the
comment DOM object) of the current binding. This can be useful if a
binding needs to access an attribute of the current element. Example:
<div id="item1" data-bind="text: $element.id"></div>
你的情况:
[anchor-tag] data-bind="attr: { href: myFunction1(Url(), $element)"
如果在您的函数中您使用父 DOM 元素并获取一些属性,最好更改您的视图模型以提供所需的信息。
如果父模型可以提供所需信息,您还可以使用“$parent”或“$parents”Knockout 上下文变量。
这就是我们将 Url()
模型输入绑定到 knockout UI
的方式。
[anchor-tag] data-bind="attr: { href: Url()"
现在我想附加到 url 一些来自父元素的东西,所以我想将 "this"
元素传递给 js 文件。
[anchor-tag] data-bind="attr: { href: myFunction1(Url(), this)"
myFunction1 = function (url, obj) {
return url + "#" + $(obj).parents('li').attr('rankAbs');
}
当我在 myFunction1
中执行 $(obj)
时,我得到了 Window 对象。
而且我无法访问更多的父对象。
根据 documentation,“$element”是绑定应用到的当前 DOM 元素:
This is the element DOM object (for virtual elements, it will be the comment DOM object) of the current binding. This can be useful if a binding needs to access an attribute of the current element. Example:
<div id="item1" data-bind="text: $element.id"></div>
你的情况:
[anchor-tag] data-bind="attr: { href: myFunction1(Url(), $element)"
如果在您的函数中您使用父 DOM 元素并获取一些属性,最好更改您的视图模型以提供所需的信息。
如果父模型可以提供所需信息,您还可以使用“$parent”或“$parents”Knockout 上下文变量。