何かを実行する機能があり、うまく機能します。ここで、ブートストラップ モーダルを追加し、モーダルが閉じたときに同じコードを実行したいと考えています。しかし、私の問題は、ユーザーのステータスを確認する必要があることです。このコードを実行し、すべてを 2 回コピーしない方法はありますか?
if(USERTYPE == 0) {
$("#fastRegisterModal").modal('show');
$("#fastRegisterModal").on('hidden', function() {
//Code for registration and upload code
}
} else {
//upload code
}
これを複数のjquery関数(主に.live関数)に含めたいのですが、「アップロードコード」を通常のjs関数に移動したくありません(.jsファイルをそのまま書き込み、変更したくありませんファイルの 70%)
これは、この方法または他の方法で可能ですか?
編集済み
ここにいくつかのコードがあります:
$('.someAction').live('click', function(event) {
// Init section
var data1 = $(".getData1").val();
var data2 = $(".getData2").val();
// I want to add this modal check before exsisting code
if(USERTYPE == 0) {
$("#fastRegisterModal").modal('show').on('hidden', function() {
var email = $(".getModalEmail").val();
var pass = $(".getModalPass").val();
$.ajax({
url: "actions/fastRegister",
type: 'POST',
data: {email: email, pass: pass},
success: function(data) {
if (data.success == 1) {
// continue with existing block of code
}
}
});
});
}
// Existing block of code
$.ajax({
url: "actions/someAction",
type: 'POST',
data: {data1: data1, data2: data2},
success: function(data) {
if (data != '') {
// show success
}
}
});
});
これで私の状況がよく説明されることを願っています:)