1

「予約済み」のすべてのクラスを取得したい(表のセルがあります)。jquery $.post() を介してすべてのセルの ID をいくつかの php メソッドに送信したいと考えています。これが私のJQueryコードです:

var cell_id;
$('.reserved').each(function()
{
    cell_id = $(this).attr('id');
    $.post("/controller/method/",{id: cell_id},function(data,status,xhr)
    {
        if(status=="success")
        {
        }
    })
});

クラスが予約されているセルが 1 つだけの場合は完全に機能しますが、複数のセルがある場合はまったく機能しません。

4

2 に答える 2

2

と呼ばれる共有グローバル変数がありますが、cell_idこれは目的を果たさないようです。ただそれを取り除く:

$('.reserved').each(function()
{
    $.post("/controller/method/",{id: $(this).attr('id')},function(data,status,xhr)
    {
        if(status=="success")
        {
        }
    })
});
于 2012-12-28T13:38:36.310 に答える
2

単一の呼び出しのみを使用してすべての id 値を送信する場合は、別のアプローチが必要です。

var cells = [];

$('.reserved').each(function() {
    cells.push(this.id);
}
$.post("/controller/method/",{ids: cells},function(data,status,xhr) {
    if(status=="success")
    {
    }
});

$_POST['ids']これにより、単一の呼び出しを使用して PHP に送信できる id 値のリストが 1 つ作成されます (それを使用していると思います) 。AJAX requesta はコストがかかるため、最小限に抑えることをお勧めします。

于 2012-12-28T13:40:38.540 に答える