-1

请参考以下代码中的注释:

$('#btnDelete').on('click', function()
{
    var treeView = $("#treeview").data("kendoTreeView");
    var userId = $('#user_id').val();

    $('#treeview').find('input:checkbox:checked').each(function()
    {
        debugger;

        var li = $(this).closest(".k-item")[0];
        var notificationId = treeView.dataSource.getByUid(li.getAttribute('data-uid')).ID;

        if (notificationId == undefined)
        {
              //if the notification ID is "undefined" here, I want the ".EACH" 'loop' to continue to the next item.
        }
        $.ajax(
            {
                url: '../api/notifications/deleteNotification?userId=' + userId + '&notificationId=' + notificationId,
                type: 'DELETE'
            }).done(function()
            {
                var treeview = $("#treeview").data("kendoTreeView");
                treeview.destroy();
                CreateNotificationTree(userId);
                console.log('Delete successful.');
            }).fail(function(jqXHR, status, error)
            {
                console.log("Error : " + error);
            });
        treeView.remove($(this).closest('.k-item'));

    });
});
4

2 回答 2

7

您正在寻找return

if (typeof notificationId == "undefined")
{
    // exit the current function
    return;
}

这具有继续下一次迭代的效果,因为each只需为每次迭代调用匿名函数。

于 2013-08-19T22:15:59.517 回答
0
return false;

break非常简单,与传统循环中的工作方式相同

编辑:对不起,你需要继续,而不是中断。对不起。

于 2013-08-19T22:16:47.227 回答