ここに私のコードの例です:
ご覧JSON機能(http://www.json.org/js.html)
var selected = $("#ddPackageContainerType option:selected");
var DTO = JSON.stringify({ sContainerType: selected.val(), sLocation: '<%=Location%>' });
$.ajax({
data: DTO,
type: "POST",
contentType: "application/json; charset=utf-8",
dataType: "json",
url:"helpers/packinguiservice.asmx/GetContainerDetail",
success: function (data, textStatus) {
var oContainerDetail = JSON.parse(data);
//Fill In All the data returned
$('#txtPackageLength').val(parseFloat(oContainerDetail.Length).toFixed(1));
$('#txtPackageWidth').val(parseFloat(oContainerDetail.Width).toFixed(1));
$('#txtPackageHeight').val(parseFloat(oContainerDetail.Height).toFixed(1));
$('#ddPackageDimensionsUOM').val(oContainerDetail.LengthUOM);
$('#txtPackageWeight').val(parseFloat(oContainerDetail.PackageWeight).toFixed(1));
hideInfoOverlay();
},
error: function(objXMLHttpRequest, textStatus, errorThrown) {
//Show Error
hideInfoOverlay();
showErrorOverlay(' ' + objXMLHttpRequest.responseText);
}
});
と、対応するWebメソッドへのリンク:
<WebMethod()> _
<ScriptMethod(ResponseFormat:=ResponseFormat.Json)> _
Public Function GetContainerDetail(ByVal sContainerType As String, ByVal sLocation As String) As String
Dim oPackageInfo As New Dictionary(Of String, String)()
Dim oPackage As Pacejet.Base.Package
Try
AppStatic.MyLocation = sLocation
oPackage = Pacejet.Base.Package.GetPackageByKey(sContainerType)
If Not oPackage Is Nothing Then
oPackageInfo.Add("Length", oPackage.Length.Value)
oPackageInfo.Add("Width", oPackage.Width.Value)
oPackageInfo.Add("Height", oPackage.Height.Value)
oPackageInfo.Add("LengthUOM", oPackage.LengthUOM.Value)
oPackageInfo.Add("PackageWeight", oPackage.StandardWeight.Value)
End If
Catch ex As Exception
Throw New HttpException(System.Net.HttpStatusCode.InternalServerError, ex.Message)
End Try
Return New JavaScriptSerializer().Serialize(oPackageInfo)
End Function
作業このコードを試してみてください、あなたは、Webメソッドを使用してこの程度か?私のWebメソッドは、あなたの提案ごとに "params"を渡すだけでは呼ばれていません。パラメータはメソッドシグネチャと同じ順序でなければなりませんか?私はそうは思わないでしょう... – aherrick
私は、パラメータがどれだけ順調であるかについては何も想定しません。その順序をサーバー側のコードと一致させるようにしてください。これを試してみると何らかのエラーメッセージが出ますか? –
Webメソッドのブレークポイントにヒットしないエラーメッセージはありません。私はこのような各変数を明白に渡すことができますが、私はそれぞれのためにそれをしたくありません... データ: "{'showStartDate': '" + params.showStartDate + "'}" – aherrick