2012-09-24 70 views
3

我已經找到一種解決方法修復,但不知道爲什麼它會導致這一點,這樣我就可以適當地修復它沒有一個「解決辦法」Web服務微調開始零

我有一個Web服務方法..

[ScriptMethod(ResponseFormat = ResponseFormat.Json, UseHttpGet = true)] 
[WebMethod(EnableSession = true)] 
public string Validate(string value) 
{ 
} 

我有調用此方法JavaScript方法..

function CheckABAValidation() { 
    $.ajax({ 
     type: "GET", 
     url: '../Service/MyWebService.asmx/Validate', 
     data: { value: $('#tbValue').val() }, 
     contentType: "application/json", 
     success: function (data) { 
     } 
    }); 
} 

問題是,當我在tbValue鍵入021214156,當我通過對WebService的步驟.. v ALUE是21214156,但如果我這樣做alert($('#tbValue').val());它只表示021214156,所以看來Web服務是看到了一些它到達Web服務前..

嘗試沒有成功:

data: { value: new String($('#tbValue').val()) },
data: { value: $('#tbValue').val().toString() },


修復我所做的是改變:

data: { value: $('#tbValue').val() }, 

要:

data: { value: ' " ' + $('#tbValue').val() + ' " ' }, 

有沒有更好的辦法,使Web服務知道這是一個字符串,而不是一個數字,即使壽字符串參數?

+1

你可以施放它。 – thatidiotguy

回答

1

沒關係,搞明白了..

 
data: JSON.stringify({ value: $('#tbValue').val() }), 

這是由於我的web服務具有

ResponseFormat = ResponseFormat.Json