将引用传递给对象javascript函数

将引用传递给对象javascript函数,javascript,html,Javascript,Html,我有一个函数,它在控件更新期间被调用,其中传递了“This”,因此该函数知道更新的控件是什么。我还在页面加载时调用函数以获取初始值,但发送document.getElementById()似乎不起作用。我应该在这里通过什么 例如: <script type="text/javascript"> window.onload = function () { alert("Got to window.onload"); materialSe

我有一个函数,它在控件更新期间被调用,其中传递了“This”,因此该函数知道更新的控件是什么。我还在页面加载时调用函数以获取初始值,但发送document.getElementById()似乎不起作用。我应该在这里通过什么

例如:

    <script type="text/javascript">

    window.onload = function () {
        alert("Got to window.onload");
        materialSelectionChange(document.getElementById('SquaresDropDownList'));

    };


</script>
而且,它在正确更改时会触发js函数

编辑


问题似乎是JS文档的加载时间。由于JS文件显然还没有完成加载,该函数没有成功调用。可能是因为window.onload。如果我将函数移到页面中而不是JS文件中,它就会工作。是否有一种方法可以添加延迟,以便我知道页面及其组件已完全加载?

您不是在委派窗口加载事件,而是在调用它,以及在id周围缺少的引号:

window.onload = myFunction(document.getElementById(typeSelect));
尝试将其环绕:

window.onload = function() {
     myFunction(document.getElementById('typeSelect')); //id in quotes
};
编辑

您必须注意js文件导入,在调用以下函数之前必须先导入:

<script src='your-script-file.js'></script>

<script type="text/javascript">
    window.onload = function () {
        materialSelectionChange(document.getElementById('SquaresDropDownList'));
    };
</script>

window.onload=函数(){
materialSelectionChange(document.getElementById('SquaresDropDownList');
};

您不是在委派窗口加载事件,而是在调用它,以及在id周围缺少的引号:

window.onload = myFunction(document.getElementById(typeSelect));
尝试将其环绕:

window.onload = function() {
     myFunction(document.getElementById('typeSelect')); //id in quotes
};
编辑

您必须注意js文件导入,在调用以下函数之前必须先导入:

<script src='your-script-file.js'></script>

<script type="text/javascript">
    window.onload = function () {
        materialSelectionChange(document.getElementById('SquaresDropDownList'));
    };
</script>

window.onload=函数(){
materialSelectionChange(document.getElementById('SquaresDropDownList');
};

window.onload=函数(){
bind(document.getElementById('typeSelect');
}

window.onload=函数(){
bind(document.getElementById('typeSelect');
}

问题似乎是JS文档的加载时间。由于JS文件显然还没有完成加载,该函数没有成功调用。如果我将函数移到页面中而不是JS文件中,它就会工作。有没有一种方法可以添加延迟,以便我知道页面及其组件已完全加载?

问题似乎在于JS文档的加载时间。由于JS文件显然还没有完成加载,该函数没有成功调用。如果我将函数移到页面中而不是JS文件中,它就会工作。是否有一种方法可以添加延迟,以便我知道页面及其组件已完全加载?

这似乎也没有做到。我在我的文档中使用“而不是”是否重要。获取…?此外,在这种情况下,我为不同的选择调用此函数大约30次,我的警报在选择列表的顶部触发,但在我想要调用的函数中不触发。这似乎也不起作用。我使用的是否重要?”而不是“在我的文档中。获取…”。。。?另外,在这种情况下,我会为不同的选择调用此函数大约30次,我的警报会在选择列表的顶部触发,但不会在我要调用的函数中触发。
window.onload=function(){alert(“Got to window.onload”);materialselection change(document.getElementById('SquaresDropDownList');};…函数材质选择更改(obj){alert(“进入函数”);}
编辑您的问题并粘贴到那里。如果您能解释一下,我们将不胜感激。
window.onload=function(){alert(“转到window.onload”);materialSelectionChange(document.getElementById('SquaresDropDownList');};…函数materialSelectionChange(obj){alert(“进入函数”);}
编辑您的问题并将其粘贴到那里。如果您能提供一些解释,我们将不胜感激。我不确定为什么它对您不起作用,但这对我有效。试试这个。我不确定为什么它对您不起作用,但这对我有效。试试这个。。