2012-05-23 52 views
4

我正在嘗試使用C#eval調用來執行一些JavaScript。在Watin中調用Javascript

browser.Frames[1].Eval("myFunctionCall(" + Id + ", 1, " + RowNumber + ");"); 

它似乎無法找到函數,它拋出一個「JavaScriptException」「屬性的值‘myFunctionCall’爲空或不確定的,不是一個函數對象」

這裏是後面的故事。
我想通過跟蹤JavaScript,這是在單擊感興趣的元素時調用的函數。所以我在瀏覽器中調出頁面並執行這個JavaScript。加載時,我得到以上錯誤。
我是初學者,我不確定如何調用遠程引用的JavaScript。

總之,我想調用javascript方法。有任何想法嗎?

謝謝!

+0

有沒有解決這個問題? – baileyswalk

回答

1

我首先要確保包含該函數的JavaScript在WatiN中使用時實際加載。在調用它之前,您可以嘗試聲明該函數。

Browser.Eval(
    "function myFunctionCall(Id, Num, RowNumber) {" + 
    " var a = 0;" + 
    " var b = 0;" + 
    "}" + 
    "myFunctionCall(" + Id + ", 1, " + RowNumber + ");"); 

希望它有幫助!

此外,請確保該功能在您的框架中可用。換句話說,該框架可以訪問該功能。