关于JavaScript中的'this'关键字

时间:2010-11-26 10:09:24

标签: javascript asp.net this-keyword

在我的网页中,我有LinkbuttonOnClientClick事件,如下所示。

<asp:LinkButton ID="lnkbtn" Text="Click" runat="server" OnClientClick="dosomething(this.Text)" />

我已经定义了这个功能,如下面的网页“

的头部分所示
<script type="text/javascript">
    function dosomething(ObjCntxt)
    {
        alert(ObjCntxt.toLocaleString());
        var textval = ObjCntxt;
        alert(textval.value);            
    }
</script>

当我运行该页面并点击LinkButton我收到消息undefined时。

我请求你们好好解决我的问题。

谢谢&amp;问候。

2 个答案:

答案 0 :(得分:1)

这对我有用:

<script type="text/javascript" language="javascript">
    function doSomething(ObjCntxt) {
        alert(ObjCntxt); // Text
        alert(ObjCntxt.toLocaleString()); // Text
        alert(ObjCntxt.toString()); // Text

        alert(ObjCntxt.value); // undefiend
    }
</script>

<asp:LinkButton ID="lnkbtn" Text="Click" runat="server" OnClientClick="doSomething(this.text);">Text</asp:LinkButton>

请注意,doSomething的内容是JavaScript,而不是.NET,因此您应该使用JavaScript成员,例如this.text而不是this.Text

您对ObjCntxt.value的期望是什么?圣诞礼物?

答案 1 :(得分:0)

试试这个

     <script type="text/javascript" language="javascript">
    function doSomething(ObjValue) {
        alert(ObjValue); // Text
       }
</script>   

    <asp:LinkButton ID="lnkbtn" Text="Click" runat="server" OnClientClick="doSomething(this.value);">Text</asp:LinkButton>