【发布时间】:2012-02-02 19:42:59
【问题描述】:
我正在使用 JQuery 将 DTO 发送到 Web 服务,但我需要知道在 Web 服务调用中收到该对象时如何迭代该对象。这是代码
JQUERY
$(divButtonText).click(function() {
var QuestionItems = {};
var foundEmptyFields = false;
var count = 1;
$(".diverror").hide();
$(".cmsquestions").each(function() {
var question = $($(this).find(".cmstextbox input")).val();
var radioValue = $($($('input[name="responsefields' + count + '"]:checked')).next()).text();
if (question.length > 0) {
var questionnumber = $(".cmspagenumber").length;
if (questionnumber == 0) {
questionnumber = 1;
}
var QuestionItem = {};
QuestionItem.TitleID = data.d;
QuestionItem.Number = questionnumber;
QuestionItem.Question = question;
QuestionItem.FieldType = radioValue;
QuestionItems[count - 1] = QuestionItem;
}
else {
foundEmptyFields = true;
var error = $(this).find(".diverror");
$(error).show();
}
count += 1;
});
if (!foundEmptyFields) {
var DTO = { 'QuestionItems': QuestionItems };
var param = JSON.stringify(DTO);
Ajax_WebService(param, 'AddQuestion', AddQuestionServerResponse);
}
});
网络方法
<WebMethod()> _
Public Function AddQuestion(ByVal QuestionItems As Object) As Integer
For i As Integer = 0 To QuestionItems.Count - 1
Next
End Function
编辑
WEB服务调用
function Ajax_WebService(param, method, callback) {
$.ajax({
type: "POST",
url: "CMSAdmin.asmx/" + method,
data: param,
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function(data) {
if (callback) {
callback.call(null, data);
}
}
});
}
编辑
好的,我已经把 WebMethod 改成了这个
<WebMethod()> _
Public Function AddQuestion(ByVal QuestionItems As List(Of QuestionItem)) As Integer
End Function
我现在可以遍历列表项,但我的 QuestionItem 类正在获取空值和空值,QuestionItem 类在这里
Public Class QuestionItem
Private _TitleID As Integer
Private _Number As Integer
Private _Question As String
Private _FieldType As String
Public ReadOnly Property TitleID() As Integer
Get
Return Me._TitleID
End Get
End Property
Public ReadOnly Property Number() As Integer
Get
Return Me._Number
End Get
End Property
Public ReadOnly Property Question() As String
Get
If Me._Question Is Nothing Then
Return String.Empty
End If
Return Me._Question
End Get
End Property
Public ReadOnly Property FieldType() As String
Get
If Me._FieldType Is Nothing Then
Return String.Empty
End If
Return Me._FieldType
End Get
End Property
End Class
为什么 JSON 对象的属性返回 null 和空值,该类结构与 JSON 类结构相同?
【问题讨论】:
-
代码中的 for 循环已经在迭代。
-
amit_g: 但我似乎无法从循环中获取值
标签: jquery asp.net .net web-services