0

現在、MVCメソッドに対してjQuery ajax呼び出しを行っており、コントローラーから次の形式でデータを送信しています。

["UserInfo ID","User ID"]

コントローラーコード:

     var autoSuggestlist;
      ........
      .
     return Json(autoSuggestlist, JsonRequestBehavior.AllowGet);

次に、次のような別のデータを追加します。

[ {"editable":true,"edittype":"integer","index":"userInfoId" ]

Controllerでこれら2つの異なるデータをjQueryAjaxに送信する方法

以下のコードでは

$.ajax(
        {
            type: "GET",
            url: "/Home/GetColumnNamesForGrid",
            data: "",
            dataType: "json",
            async: false,
            success: function (result) {

結果は、上記の両方のJSONデータを取得するはずです。コントローラコードを変更するにはどうすればよいですか。手伝ってください

ありがとう

4

1 に答える 1

1

正確に何を意味するのかわかりませんが、コントローラーからプロパティを含むオブジェクトを送信する場合は、次のように実行できます。

return Json(new { editable = true, edittype = "integer", index = "userInfoId" }, JsonRequestBehavior.AllowGet);

次に、javascriptから、resultオブジェクトを次のように使用できます。

var editable = result.editable;//will be true

実際に両方のデータ型を同時に送り返したい場合は、次のようなラッパーオブジェクトを作成します。

var myObject = new { editable = true, edittype = "integer", index = "userInfoId" };
var myArray = autoSuggestlist;

return Json(new { @myObject = myObject, @myArray = myArray}, JsonRequestBehavior.AllowGet);

次に、次のようにJavaScriptで使用します。

var myObject = result.myObject;
var editable = myObject.editable;//will be true

var myArray = result.myArray;
var firstItem = myArray[0];//will be "UserInfo ID"
于 2013-03-14T12:08:24.563 に答える