jquery在代码后面调用不起作用

时间:2012-10-30 09:45:22

标签: jquery .net

我试图调用自定义jquery,它将切换iframe-div可见性。它在从按钮onclick直接调用时工作,但不在后面的代码中调用。

$(document).ready(function () { 
    myfuncion01=function(){ 
        var myframe = window.parent.document.getElementById('myframe01');
        var vr_mydiv01 =$(myframe).contents().find('#div01');

        $(vr_mydiv01).hide();
    }

});

HTML标记

<input id="Button1" type="button" value="button" onclick="myfuncion01();" />

背后的代码

 ClientScript.RegisterStartupScript(this.Page.GetType(), "hwnd_appData01", "<script type='text/javascript'>myfuncion01(); </script> ", false);

我错过了什么?感谢。

3 个答案:

答案 0 :(得分:0)

你错过了一句话。

var myframe = window.parent.document.getElementById(myframe01');

应该是

var myframe = window.parent.document.getElementById('myframe01');

还要在document.ready外部编写函数或将其删除。它不是函数所必需的。

    myfuncion01=function(){ 
    var myframe = window.parent.document.getElementById('myframe01');
    var vr_mydiv01 =$(myframe).contents().find('#div01');

    $(vr_mydiv01).hide();
}

答案 1 :(得分:0)

http://www.aptana.com/(或任何js IDE)......人们对“遗失的字符”的看法很容易被欺骗。

答案 2 :(得分:0)

来自the documentation

  

执行RegisterStartupScript方法添加的脚本块   当页面完成加载但在页面的OnLoad事件之前   提高。不保证脚本块按顺序输出   他们已经注册。

执行使用RegisterStartupScript注册的脚本时,该功能尚不存在。

从准备好的回调中取出函数定义并将其放在标题中:

<head>
...
<script>
function myfuncion01(){ 
    var myframe = window.parent.document.getElementById('myframe01');
    $(myframe).contents().find('#div01').hide();
}
</script>
</head>