0

パラメータとして int の配列を使用して、jQuery Mobile から Controller/Action に changePage 関数をバインドしようとしています。

アクションは次のように定義されます。

[HttpPost]
public ActionResult MessageHistory(int[] ids)

次のような jQuery ajax を使用する場合:

$.ajax({
    type: "POST",
    url: "MessageHistory",
    contentType: "application/json",
    data: JSON.stringify({ ids: messagesIds }),
    success: function (messages) {
        alert('eh!');
    }
});

パラメータは適切にバインドされており、配列は null ではありません。

しかし、jQuery Mobile changePage を次のように使用すると:

$.mobile.changePage("MessageHistory", {
    type: "post",
    data: JSON.stringify({ ids: messageIds })
});

配列がヌルです。

リクエストの違いを探していると、おそらくリクエストの Content-Type に問題があることがわかりますが、changePage 関数でそれを変更することはできません。

カスタム ModelBinder も試しましたが、値も null です。

私に何ができる?

ありがとう!

4

1 に答える 1