3

私は次のコードを持っています:

    $.ajax({
        url: modal.href,
        dataType: 'json',
        type: 'POST',
        data: modal.$form.serializeArray()
    })
        .done(onSubmitDone)
        .fail(onSubmitFail);

TypeScriptは$.ajaxを指し、次のようなメッセージを表示します。

指定されたパラメータは、コールターゲットのどのシグニチャとも一致しません。

ただし、$。ajaxが正しく、jQuery定義を正しく参照していることがわかります。誰かが間違っているかもしれないことを提案できますか?

4

2 に答える 2

4

jquery.d.tsを参照する:

ajax(url: string, settings: JQueryAjaxSettings);

これはajax関数のシグネチャです。typescriptが受け入れる代わりに、URLを設定オブジェクトから移動し、パラメーターとして渡す必要があります。または、jquery.d.ts定義を編集して、設定のみの関数呼び出しを受け入れます。

于 2012-10-29T08:11:58.863 に答える
3

初期のjQuery定義には、URLなしのオーバーロードは含まれていませんが、更新されており、CodePlexから最新バージョンを取得できます:http: //typescript.codeplex.com/SourceControl/BrowseLatest

https://github.com/borisyankov/DefinitelyTypedには、最新の更新されたjQuery定義のミラーもあります。

于 2012-10-29T23:17:21.383 に答える