0

bootbox.confirm() の問題は何ですか? これは私のコードです:

var record = bootbox.confirm("Are you sure you want to delete", function (res) {
    if (res == true) {
        return true;
    } else {
        return false;
    }
}
});

確認を待たず、デフォルトで true を返します。if is is return false 最後に使用して、それが消えるのを止めます

var record = bootbox.confirm("Are you sure you want to delete", 
    function (res) {
        if(res == true)
        {
            return true;
        }
        else
        {
            return false;
        }
    }
});
return false;

「OK」または「キャンセル」のクリックに対するアクションは表示されません。

trueセクションで単純なアラートを使用して動作を確認すると、trueセクションに入り、単純なアラートが表示され、クリックされたボタンの必要な値が表示されますが、同じセクションでtrueを返すと機能しません

var record = bootbox.confirm("Are you sure you want to delete", function (res) {
    if (res == true)
        alert('true');
    else
        alert('false')
}
});
return false;
4

3 に答える 3

2

私は解決策を得ました.bootstrap.confirm()は動作が非同期であるため、そのフローを停止することはできませんが、ロジックを変更して次のように使用できます

まず、デフォルトの動作を停止してから、それを要件として使用する必要があります

やりたいことは何でも、コードの真のセクションの下に配置します

         e.preventDefault();// used to stop its default behaviour 
             bootbox.confirm(Are you sure you want to delete ? , function (confirmed) {
                 if (confirmed == true) {
                  // place here what we want to do
                     __doPostBack('btnDelete', 'OnClick');
                 } 
                  else 
                  {

                   }
             });
于 2014-05-28T11:37:40.490 に答える
0

コードに余分な花括弧があり、それを削除してください。

 var record = bootbox.confirm("Are you sure you want to delete", function (res) {
     if (res == true) {
         return true;
     } else {
         return false;
     }
     //}   // invalid closing brace
 });

これは、確認ボックスが機能しない問題の 1 つになる可能性があります。

ハッピーコーディング:)

于 2014-04-29T07:00:19.813 に答える