0

ユーザーがリンクをクリックすると、JQuery メソッドが起動し、にある Web サービスを呼び出す必要があります/Project/Send/SendMethod。メソッドが起動されるリンクをクリックするsendと、アラートが表示されるため、これがわかりました。しかし、問題は Web サービスを呼び出す方法です。方法であれば良いのですがPOST

<a href='' id='2' class='send'> Send  </a>

Jquery メソッド

   $(function () {
        $('.send').click(function () {
            alert(this.id);

        });
    });
4

4 に答える 4

1

jQuery を使用します$.post

 $(function () {
    $('.send').click(function () {
        alert(this.id);
        $.post(url, {'id':this.id}, function (response) {
            //do the result oriented activities
        });
    });
});
于 2013-02-26T11:31:20.557 に答える
1

メソッドを使用して、このjQuery Ajax$.ajax()のように URL とオプションを指定します

$(function() {
    $('.send').click(function (e) {
        e.prevenDefault();
       $.ajax({
          url: "Project/Send/SendMethod",
          type: "POST",
          data: values,
          success: function(){
                  alert("success");
                  $("#result").html('submitted successfully');
          }
       });
    });
});
于 2013-02-26T11:29:08.703 に答える
1

$.ajax()jQueryでAPIを利用できます。さらに、リンクのデフォルトの動作を防ぐ必要があります。そうしないと、ajax 要求を送信する代わりにページが変更されます。

$('.send').click(function (event) {
    event.preventDefault();
    $.ajax( {
        url:"Project/Send/SendMethod",
        type: "POST",
        data: { "id": this.id },
        success:function(data) {
            alert(data);
        }
    });
});

jQuery 1.8以降を使用している場合、「成功」コールバックはjQuery 1.8で非推奨になったためです。「完了」http://api.jquery.com/deferred.done/を使用する必要があります

$('.send').click(function (event) {
    event.preventDefault();
    $.ajax( {
        url:"Project/Send/SendMethod",
        type: "POST",
        data: { "id": this.id }
    }).done(function( data) {
        alert(data);
    });
});
于 2013-02-26T11:34:32.243 に答える
0

私はjQueryのajax()機能を使用します(そして定期的に使用します)。

以下の例では、JSON 形式の応答を取得することを前提としています。完全な HTML ページを取得する場合は、これを変更できます。詳細については、 http://api.jquery.com/jQuery.ajax/を参照してください。

$(function () {
    $('.send').click(function (e) {
        e.stopPropagation();
        e.preventDefault();
        var thisId = $(this).attr('id');
        alert(thisId);
        var hostAndPort = window.location.protocol + "//" + window.location.hostname + ":" + window.location.port; // current page and protocol (http or https)
        var requestUrl = hostAndPort + "/Project/Send/SendMethod/";
        var str_address = requestUrl + 'id?=' + thisId;
        $.ajax({
            url: str_address,
            contentType: 'application/json',
            dataType: 'JSON',
            type: 'POST',
            success: function (response) {
                console.log(response);
                // do something...
            },
            error: function (e) {
                // handle error
            }
        });
    });
});
于 2013-02-26T11:29:06.007 に答える