2013-04-10 77 views
2

我有檢查以下條件傳遞參數到從代碼的JavaScript方法背後

method(selection1,selection2) 
{ 
    if(selection1=="yes") 
    { 
    //Do something 
    } 
    if(selection2=="yes") 
    { 
    //Do something 
    } 
} 

現在我將參數傳遞從代碼後面這樣

ClientScript.RegisterStartupScript(GetType(), "id", "method('" + selection1 + "," + "'" + selection2 + "')", true); 

在這裏選擇一個JavaScript方法的字符串變量

string selection1="Yes" 

但是所需的功能並不奏效。我知道JavaScript是正確的,因爲當我使用硬編碼參數,然後JavaScript運行。

請幫忙。謝謝

回答

1

這樣調用它:

Page.ClientScript.RegisterStartupScript(this.GetType(), "MyScript", javascript:method('"+selection1+"','"+selection2+"')", true); 

這將調用函數發送PARAMS爲好,只是知道這一點在字符串中使用的情況下。

+1

其實當我試着按你的方式做時,我發現我錯過了通話中的單引號。這是問題。 (你的和我的) – TheVitruvianAnalogy 2013-04-10 06:47:55

+0

我沒有那麼多信譽:P – TheVitruvianAnalogy 2013-04-10 07:18:09

+0

+1爲了完成它... thanx – 2013-10-30 10:16:41

0

您的代碼缺失'爲第一個字符串參數結束引號。 使用這樣

"method('" + selection1 + "', '" + selection2 + "')" 

爲了比較是成功的字符串必須完全相等。 selection1值應爲"yes"的條件是成功