J'ai essayé d'utiliser TokenInput Jquery pour l'autocomplète à valeur multiple où il nécessite la réponse JSON en tant que données d'entrée
Http://loopj.com/jquery-tokeninput/
J'utilise la page ASPX comme source
<script type="text/javascript" > $(document).ready(function() { $("#txtTest").tokenInput("Complete.aspx", { theme: "facebook" }); }); </script>
Édité à partir d'ici Question: Comment fournir les données JSON à partir d'une page aspx dans le format souhaité car j'ai une donnée avec des valeurs selon Querystring depuis Complete.aspx
protected void Page_Load(object sender, EventArgs e) { if (!string.IsNullOrEmpty(Request.QueryString["q"])) { string json = "[{\"Id\":\"1\",\"name\": \"Test 1\"},{\"Id\":\"2\",\"name\": \"Test 2\"}]"; Response.Clear(); Response.ContentType = "application/json; charset=utf-8"; Response.Write(json); Response.End(); } }
Toute aide serait appréciée.
Alternative au WCF
, vous pouvez créer WebMethod
dans .aspx.
[WebMethod] public static string Info() { JavaScriptSerializer js = new JavaScriptSerializer(); string result = js.Serialize(new string[] { "one", "two", "three" }); return result; }
Et demandez ce WebMethod via un appel Ajax.
<script type="text/javascript"> $(function () { $("#button1").click(function () { $.ajax({ url: "Default.aspx/Info", data: "{}", contentType: "application/json", success: function (data) { alert(data.d); }, type: "post", dataType : "json" }); }); }); </script>
MODIFIER:
Code-behind – Gestionnaire de page_Load (JsonPage.aspx)
string json = "[{\"name\":\"Pratik\"},{\"name\": \"Parth\"}]"; Response.Clear(); Response.ContentType = "application/json; charset=utf-8"; Response.Write(json); Response.End();
Et demandez le JsonPage.aspx
via TokenInput jQuery
. (Sample.aspx et JsonPage.aspx sont dans le même dossier)
<script type="text/javascript"> $(function () { $("#txt1").tokenInput("JsonPage.aspx"); }); </script> <body> <input type="text" id="txt1"/> </body>
Vous devriez jeter un oeil à WCF. WCF a un support natif pour le retour de JSON et vous ne devez pas vous soucier de la concaténation de chaîne ou des types de contenu HTTP.