Javascript ASP.Net:onload事件能否应用于控件

Javascript ASP.Net:onload事件能否应用于控件,javascript,asp.net-mvc,Javascript,Asp.net Mvc,我有一些这样的代码: return helper.DropDownList(data.ModelEntityId.ToString(), selectList, null, new { onchange = onChange }); 其中onChange变量可以为空,也可以从某些元数据加载。这是可行的,但是我也希望将javascript函数应用于该控件的onload事件 是否有方法将onload事件应用于控件?我尝试了以下方法,即使没有错误,也不起作用 return helper.DropD

我有一些这样的代码:

return helper.DropDownList(data.ModelEntityId.ToString(), selectList, null, new { onchange = onChange });
其中onChange变量可以为空,也可以从某些元数据加载。这是可行的,但是我也希望将javascript函数应用于该控件的onload事件

是否有方法将onload事件应用于控件?我尝试了以下方法,即使没有错误,也不起作用

 return helper.DropDownList(data.ModelEntityId.ToString(), selectList, null, new { onchange = onChange, onload = onChange });

通过谷歌搜索,我只能找到应用于整个视图的onload事件的引用。这对我不起作用,因为我调用的任何javascript都应用于视图上的单个数据项,而不是整个视图本身。

为什么不向视图添加javascript代码,如(jQuery)


MVC没有一些钩子来钩住控件的onLoad事件。您将javascript事件附加到document.ready事件,而不是对象上。

经过一些尝试和错误,我编写了以下代码:

function pageLoad() {
            var script;
            <%foreach(var item in Model.Record) { %>
                <%if (item.Value.ModelEntity.ModelItem.ModelCustomOnChange != null) { %>
                    script = <%=item.Value.ModelEntity.ModelItem.ModelCustomOnChange.OnChangeScript%>;

                    if (eval('typeof(' + script + ')') == 'function') {
                        eval(script + '("' + parm1 + '", "' + parm2 + '");');
                    }
                    else {
                        alert('JavaScript function "' + script + '" could not be found.  No attempt was made to call the function.');
                    }                            
                 <% } %>
             <% } %>    
函数pageLoad(){
var脚本;
脚本=;
如果(eval('typeof('+script+'))=='function'){
eval(script+'(“'+parm1+'”、“'+parm2+'”;”);
}
否则{
警报(“找不到JavaScript函数“+”脚本+”。未尝试调用该函数。”);
}                            

是的,我想这可能是我必须走的路…我如何从字符串调用函数?也就是说,我有一个变量(我们称它为varFunction),它包含一个字符串-这是函数名。
function pageLoad() {
            var script;
            <%foreach(var item in Model.Record) { %>
                <%if (item.Value.ModelEntity.ModelItem.ModelCustomOnChange != null) { %>
                    script = <%=item.Value.ModelEntity.ModelItem.ModelCustomOnChange.OnChangeScript%>;

                    if (eval('typeof(' + script + ')') == 'function') {
                        eval(script + '("' + parm1 + '", "' + parm2 + '");');
                    }
                    else {
                        alert('JavaScript function "' + script + '" could not be found.  No attempt was made to call the function.');
                    }                            
                 <% } %>
             <% } %>