我有一个导航树重写了结点的单击事件的JS方法,使之执行特定的功能而不是链接页面,但这个JS方法在一个JS对象中,我怎么使用?
像这样:Javascript:MyVodi(); 没法使用。

解决方案 »

  1.   

    在页面中添加<script type="text/javascript" language="javascript" src="flilename.js"></script>让后就可以直接使用该文件中的方法了。例如:直接调用MyVodi();
      

  2.   

    如果你是服务器端控件,则需要给服务器控件添加事件方法。ControlName.Attributes.Add("onclick", "javascrpt:MyVodi();");
      

  3.   

    谢了,
    但问题是我有多个树对象在同一个页面上,每个树对象要使用一组自己的JS全局变量,这些变量在JS对象中上面的那个方法也在对象中且要使用到对象中的变量。我目前是可以调用的,但会出错。原因是无法引用回对象中的变量。
      

  4.   


    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>未命名頁面</title>
        <script type="text/javascript">
        
            function pageLoad() {
            }        function SayHello()
            {
                alert("Hello");
            }
        
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:ScriptManager ID="ScriptManager1" runat="server" />
        </div>
            <asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="return SayHello();"/>        
        </form>
        
    </body>
    </html>不知道我理解的對不對。。
      

  5.   


    ComboTree.prototype.MyVoid = function(obj) {
        var self = this;    self.ClickValue = obj;
        document.getElementById(self.UniqueID).value = self.ClickValue;
        if (self.onchange != "") {
        try {
        eval(self.onchange);
        } catch (e) { };
        }
    };
    self变成了window对象,但UniqueID是ComboTree对象的变量。找不回去 了。
      

  6.   

    那你把这个方法修改一下,传入实际的Tree对象
      

  7.   

    问题在于ComboTree,不应该是window对象的。
      

  8.   

    问题在于this应该是ComboTree对象而不是window对象。