我的页面上有一个ListBox。我正在对C#函数进行AJAX调用,并且需要传递所选项目的值。下面是我有:被传递到C#函数看起来像解析C#中的jQuery序列化数据#
$('#btnSubmit').click(function() {
$.ajax({
type: "POST",
url: 'Default.aspx/GetSelectedValues',
data: '{selectedValues: ' + $('#lbItems').serialize() + '}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: OnSuccess
});
});
<select id="lbItems" multiple="multiple">
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
<option value="4">Four</option>
<option value="5">Five</option>
</select>
[System.Web.Services.WebMethod]
public static string GetSelectedValues(string selectedValues)
{
//
}
数据:
lbItems=1&lbItems=3&lbItems=5
是否有任何内置的C#功能,可以反序列化,很容易,将这些值转换成某种排列?或者,也许有更好的方式从jQuery传递数据?
这实际上是我首选的方法,但我不知道如何通过AJAX调用传递值数组(在这种情况下,所选选项的值)。我有一个关于此前的帖子:http://stackoverflow.com/questions/3926098/passing-an-array-of-values-in-an-asp-net-jquery-ajax-post。如果您知道使用JSON的方式,我很乐意看到一个示例。 – Steven 2010-10-13 20:22:10
我在另一个问题上回答了,因为那里的话题更多。 – 2010-10-13 21:33:16
太棒了,谢谢。 – Steven 2010-10-14 14:54:21