0

私は ajax を使用したことがなく、これがコントローラーからメソッドを呼び出して、望ましい結果が得られるかどうかを確認しようとしています。現在、VS の JavaScript デバッガーは動作していないようです。これは正しく見えますか?

 $("form").submit(function() {
            var hasCurrentJob = $.ajax({
                url: 'Application/HasJobInProgess/@Model.ClientId'
            });
  });

コントローラーメソッド

public Boolean HasJobInProgress(int clientId)
{
    return _proxy.GetJobInProgress(clientId).Equals(0);
}

アップデート

$("#saveButton").click(function() {
        var hasCurrentJob = false;
        $.ajax({
            url: '@Url.Action("HasJobInProgress","ClientChoices")/',
            data: { id: @Model.ClientId },
            success: function(data){
                hasCurrentJob = data;
            }
            });
        if (hasCurrentJob) {
            alert("The current clients has a job in progress. No changes can be saved until current job completes");
        } 
    });
4

1 に答える 1

5

Url.Actionアクション メソッドを呼び出すときは、HTML ヘルパー メソッドを使用してみてください。これにより、アクション メソッドへの正しい URL が取得されます。追加する ../ の数を気にする必要はありません。

$(function(){
   $("form").submit(function() {
     $.ajax({
        url: '@Url.Action("HasJobInProgess","Application")',
        data: {clientId: '@Model.ClientId'},
       success: function(data) {
        //you have your result from action method here in data variable. do whatever you want with that.
        alert(data);
       }
     });
   });
});
于 2012-04-09T20:48:32.177 に答える