参考
- https://ichiroku11.hatenablog.jp/entry/2013/10/05/222806
- https://qiita.com/pale2f/items/278e876795decc0b88fa
- https://qiita.com/soarflat/items/1a9613e023200bbebcb3
jQuery.Deferred
ベースで書かれた上記1を参考に、async/await
で書いてみた。
async/await
は上記3で勉強しながら。。
$('#btnModal').on('click', async function(e){ | |
if(await confirm('submitする??')){ | |
console.log('submit!!'); | |
} else { | |
console.log('cancel!!'); | |
e.preventDefault(); | |
e.stopPropagation(); | |
} | |
}); | |
function confirm(content){ | |
return new Promise((resolve) => { | |
$('div.modal-body').text(content); | |
// 1回だけ実行 | |
$('#btnModalOk').one('click', () => { | |
resolve(true); | |
}); | |
$('#myModal').one('hidden.bs.modal', () => { | |
// OKボタンで先にresolveされていたら、そちらが優先. | |
resolve(false); | |
}); | |
$('#myModal').modal('show'); | |
}); | |
} |
参考
jQuery.Deferred
ベースで書かれた上記1を参考に、async/await
で書いてみた。
async/await
は上記3で勉強しながら。。