2

そのため、負荷テスト用に約 150 のテストユーザーを作成しました。150 人のユーザーをすばやく削除できるようにする必要があります。ユーザーを削除する現在の唯一の方法は、一度に 1 つずつです。ユーザーを削除する方法は、フォームの値を変更してから送信する [削除] ボタンをクリックすることです。次に、確認を求められる別のページに移動します。

<a class="enable-delete-link" onclick="deleteUser(23367)">Delete</a>

function deleteUser(userID) {
            $j('#deleteForm > input').val(userID);
            $j('#deleteForm').submit();
          }

<form action="user-delete.jsp" id="deleteForm" method="post">
<input type="hidden" name="user" value="" />
</form>

複数の新しいウィンドウでフォームを複数回送信して、確認ボタンを手動で押すことは可能ですか。

私が試してみました

for(people = 23245; people < 23391; people++){  
$j('#deleteForm > input').val(people);
$j('#deleteForm').attr('target', '_blank');
$j('#deleteForm').submit();
}

ただし、1 ページしか開きません。

助けてくれてありがとう!!

4

2 に答える 2

1

フォーム投稿を作成するためにポップアップを使用する必要はありません。Ajax 投稿を使用できます。

for(var people = 23245; people < 23391; people++){
    $.post('user-delete.jsp', {user: people});
}

そうは言っても、サーバーでバッチ削除を行う方が良いでしょう。そのアクションに値の範囲を送信できます。ほとんどのブラウザーには、この方法で考慮する必要がある同時 ajax 要求に対する制限があります。

次のようにして、後続の各リクエストを順番に行うこともできます。

var range = [];
for(var people = 23245; people < 23391; people++){
    range.push(people);
}

var deleteOne = function(){
    if(range.length > 0){
        // success calls deleteOne again
        $.post('user-delete.jsp', { user: range.pop() }, deleteOne);
    }
};

// kick it off
deleteOne();
于 2012-09-24T21:05:06.723 に答える
0

ファイル user-delete.jsp を書き直すことができる場合は、単一のユーザー ID ではなく POST 配列を受け取るように変更できます。次に、複数のユーザー、グループなどを選択できるフォームに変更できます...

于 2012-09-24T21:04:39.300 に答える