2012-09-10 50 views
1

我有一個用戶控件,並且我有一個方法isDirty()添加到此用戶控件中。 這個用戶控件在很多地方都有使用。我如何在ASP.Net中爲用戶控件添加Javascript對象

如何使用javascript訪問此方法。如何爲此特定用戶控件創建JavaScript對象,然後使用find方法訪問它?

$ find('__用戶控件的ID)? 我試過了。

感謝&問候, 弗朗西斯

回答

0

JS對象是這樣創建的:

var myobject = { prop1: 'hello', 
       prop2: function(){//whatever}, 
       prop3:'yay'}; 

myobject.prop1; //'hello' 
myobject.prop2(); //that's right, it runs that function(){//whatever} in prop2 

你不能直接訪問與JS的任何服務器端方法。用JSON對象創建AJAX請求,在ASP.NET中解析它,然後在ASP.NET中根據對象中的內容調用你想要的函數。我可以使用ExternalInterface.addCallback做直接的JS訪問,但我不確定ASP.NET有這樣的事情(我強烈建議不要使用「Flash的blackbox JS訪問」樣式)。

如果您已經添加了一個JS對象添加到您的用戶控件莫名其妙服務器端通過執行JavaScript,你只需訪問這樣的:

myUserControlAssociatedJSObject.myFunction(); //it runs it! 
+0

其實我想訪問一個客戶端的方法說「IsDirty()」這是使用$查找組件的用戶控件的一部分 – user581157

+0

並感謝您的回覆.. – user581157

+0

如果isDirty()已經存在作爲一個JS對象的JS函數(檢查Firebug DOM也許你可以找到它)然後,你只需要執行wherevermyJsObjectIs.isDirty()和bam就可以運行該函數 - 希望這有助於 – sajawikio

相關問題