好的,我正在尝试为自定义确认框实现此插件,但就返回值而言,我有点迷失。这是原始的:
jQuery("a.confirm").click( function() {
if ( confirm( '<?php _e( 'Are you sure?' ) ?>' ) ) return true; else return false;
});
这就是我想要实现的:
$("a.confirm").click(function(){
var elem = $(this).closest('.item');
$.confirm({
'title' : 'Delete Confirmation',
'message' : 'You are about to delete this item. <br />It cannot be restored at a later time! Continue?',
'buttons' : {
'Yes' : {
'class' : 'blue',
'action': function(){
elem.slideUp();
}
},
'No' : {
'class' : 'gray',
'action': function(){} // Nothing to do in this case. You can as well omit the action property.
}
}
});
实际上我只需要让click事件识别第二个而不是第一个,然后正确返回。现在,如果你点击,我得到原始(浏览器默认值),然后我得到第二个。我认为“if声明”是什么让我失望。
有什么想法吗?
答案 0 :(得分:1)
首先,jQuery click
方法返回一个jQuery对象。它不会返回您在传递给.click()
的匿名函数中返回的任何内容。
其次,if语句有语法错误。它应该写成这样:
if ( confirm( "<?php _e( 'Are you sure?' ) ?>" ) ){
return true;
} else {
return false;
}