J'ai un ListBox sur ma page. Je fais un appel AJAX à une fonction C#, et j'ai besoin de transmettre les valeurs des éléments sélectionnés. Voici ce que j'ai:Analyser les données sérialisées jQuery en C#
$('#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)
{
//
}
Les données passées à la fonction C# ressemble à:
lbItems=1&lbItems=3&lbItems=5
Y at-il fonction C# intégré qui peut désérialiser facilement, pour convertir les valeurs en un tableau d'une sorte? Ou peut-être existe-t-il un meilleur moyen de transmettre les données de jQuery?
C'est en fait ma méthode préférée, mais je ne sais pas comment passer un tableau de valeurs (dans ce cas, les valeurs des options sélectionnées) via un appel AJAX. J'ai un post précédent à ce sujet ici: http://stackoverflow.com/questions/3926098/passing-an-array-of-values-in-an-asp-net-jquery-ajax-post. Si vous connaissez un moyen d'utiliser JSON, j'aimerais voir un exemple. – Steven
J'ai répondu à l'autre question, car il était plus sur le sujet là-bas. –
Génial, merci. – Steven