如何在函数内的onclick函数中访问它?

时间:2018-06-03 05:59:35

标签: javascript

以下代码无法正常工作。有人请帮我解决这个问题 单位名称不会被警告。

function unit(name,svgCircle)
{
    this.name = name;
    this.cir = svgCircle;
    this.cir.onclick = clicking;
}
function clicking(){
    alert(this.name);
}

2 个答案:

答案 0 :(得分:0)

这应该有用,你使用角度还是任何其他javascript

 function unit(name,svgCircle)
        {
            this.name = name;
            this.cir = svgCircle;
            this.cir.onclick = clicking.bind(this);
        }
        function clicking(){
            alert(this.name);
        }
 
 unit("ml", "testSvg");
 clicking();

答案 1 :(得分:0)

实际上你的onclick函数绑定了this.cir对象。所以"这个" click()函数内的对象将引用this.cir对象。如果要在click()函数中访问name属性,则可以再添加一行作为以下代码。

function unit(name,svgCircle)
{
    this.name = name;
    this.cir = svgCircle;
    this.cir.name = name;
    this.cir.onclick = clicking;
}
function clicking(){
    alert(this.name);
}