2016-08-11 88 views
0

以下方法原理:錯誤轉換字符串INT32

[System.Web.Services.WebMethod] 
public string GetData(string year) 
{ 
    Int32 iYear = DateTime.Now.Year; 
    if (DateTime.IsLeapYear(iYear)) 
    { 
     return "true"; 
    } else 
    { 
     return "false"; 
    } 
} 

但是,如果我通過一年的2015年說,作爲一個字符串,下面的代碼無法正常工作。

using System; 

public partial class _Default : System.Web.UI.Page 
{ 
public string output = ""; 
protected void Page_Load(object sender, EventArgs e) 
{ 
    if (Request.Params["callback"] != null) 
    { 
     output = Request.Params["callback"] + "('" + GetData(Request.Params["year"]) + "')"; 
    } 
} 

[System.Web.Services.WebMethod] 
public string GetData(string year) 
{ 
    int iYear = Convert.ToInt32(year); 

    if (DateTime.IsLeapYear(iYear)) 
    { 
     return "true"; 
    } else { 
     return "false"; 
    } 
} 
} 

我很難弄清楚我的錯誤。我將年份作爲字符串傳遞給jQuery Ajax調用。

任何想法爲什麼?

+0

這與jQuery或Ajax有什麼關係? – DavidG

+1

你有沒有試圖調試你的網頁? –

+1

你能解釋一下這裏不起作用嗎? – Steve

回答

0

發現錯誤,錯誤是在Ajax調用,我被放入引號內的日期。非常感謝您的支持和幫助。

這是我不得不 數據:{年: 「 '+ $( '#txtYear')。VAL()+'」}

當我去掉引號,它的工作。 data:{year:+ $('#txtYear')。val()}