2012-10-30 20 views
0

我試圖調用自定義jQuery會切換iframe-div的可見性。它的工作時,直接從按鈕onclick調用,但不在代碼後面。jquery調用後面的代碼不工作

$(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); 

我是怎麼錯過了後面?謝謝。

+0

假如缺少的報價不構成錯誤的問題,你應該嘗試使用具有編輯代碼色。 –

+0

這是什麼 - ClientScript.RegisterStartupScript –

+0

@AbhishekSaha請參閱我的答案中的鏈接(http://msdn.microsoft.com/en-us/library/z9h4dk8y.aspx) –

回答

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

我錯過了有關發佈的單引號,但這不是該錯誤,否則它不會在按鈕onclick()中工作。 –

0

the documentation

用的RegisterStartupScript方法添加的腳本塊在頁面加載完成但頁面的onload事件之前 提出執行 。腳本塊不能保證以 的順序輸出。

當使用RegisterStartupScript註冊的腳本執行時,該功能尚不存在。

採取函數定義了準備回調,並把它放在你的頭:

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

非常好。另外我缺少ClientScriptManager腳本參數中的腳本標記。 –