confirmation message box
을 this plugin으로 작성했습니다. 함수의 자바 스크립트가 제대로 작동하지 않습니다.
<input type="button" id="delete" value="Delete All" />
<input type="button" id="deleteByID" value="Delete Item By ID" />
나는 각 버튼을 클릭
, 그것은 메시지 상자를 생성 할callMessageBox()
전화 및 메시지 상자의 ID 버튼 이름으로 동적입니다.
message box
이 전화를 거친 후 을 호출하기 위해
actionOnMsgBox
이 실행됩니다.
function messageBox(btnID, heading, confirmMsg, cancelMsg){
var box = ' <div id="modal"><div id="heading">'+heading+'</div><div id="content"> <a href="#" id="'+ btnID + 'revealYes" class="button green close"><img src="images/tick.png">'+confirmMsg+'</a> <a href="#" id="'+btnID+'revealNo" class="button red close"><img src="images/cross.png">'+cancelMsg+'</a>';
return box;
}
function callMessageBox(btnID, heading, confirmMsg, cancelMsg){
if($('#modal').length == 0)
$('body').append(messageBox(btnID,heading,confirmMsg,cancelMsg))
$('#modal').reveal({
animation: 'fade',
animationspeed: 320,
closeonbackgroundclick: true,
dismissmodalclass: 'close'
});
}
function actionOnMsgBox(btnID,callback,item){
$(document).on('click','#'+ btnID +'revealYes,#'+ btnID +'revealNo',function (e) {
var choice = $(e.target).attr('id');
if ($(this).attr('id') == btnID + 'revealYes'){
if(typeof item === 'undefined'){
callback();
}else{
callback(item);
}
} else {
return false;
}
});
}
문제 : 나는 Delete All
버튼을 클릭하면, 다음 messageBox()
이 deleterevealYes
및 deleterevealNo
를 생성
$('#delete').click(function(){
callMessageBox('delete','Are you sure to delete all items from your cart?','Yes','No');
});
actionOnMsgBox('delete',deleteAllItemInCart);
$('#deleteByID').click(function() {
callMessageBox('deleteByID','Are you sure to delete this item from your cart?','Yes','No');
});
actionOnMsgBox('deleteByID',deleteItemInCart,item1);
이들은
내 기능입니다. 그러나Delete Item By ID
을 클릭했을 때
messageBox()
은 여전히
#deleterevealYes
과
#deleterevealNo
을 생성했는데 예상 한 결과는
#deleteByIDrevealYes
과
#deleteByIDrevealYes
입니다.
어떤 원인 일 수 있습니다. 감사.
'$ ('# modal'+ btnID)':/ – titi
을 쓰면 내'#modal {'css에 문제가 있습니다. '< div class = "modal"id = "모달"+ btnID + ' ">'CSS에서 #modal을 .modal로 변경 –