ASP.NET MVC – How to Return JSON with MVC Controller

asp.net-mvc

I am calling my controller method using .ajax. my controller method call web service which returns dictionary.
now i need to return this and populate dropdown list. i am trying with return JSON and need to populate using success (response)

I am using MVC 1.0

        $.ajax(
            {
                url: 'LookupValue/',
                data: { 'sLookupIds': selectedtext },
                datatype: "json",
                traditional: true,
                success: function (data) {
                    alert(data.value);
                }
            });

thanks in advance.

Best Answer

In controller

    public JsonResult LookupValue(String sLookupIds)
    {

        SelectList olist = new SelectList(oDict, "key","value");

        return Json(olist);

  }

In view

        $.ajax(
            {
                url: 'LookupValue/',
                data: { 'sLookupIds': selectedtext },
                datatype: "json",
                traditional: true,
                success: function (data) {
                    $.each(data, function (index, val) {
                        $('#lookup')
                        .append($("<option></option>")
                        .attr("value", val.Value)
                        .text(val.Text));
                        //ddHTML = ddHTML + "<option  value='" + val.Value + "'>'" + val.Texts + "'</option>";
                    });
                }
            });
Related Question