return confirm('Changing the protocol will reset the project Team members');
}
我正在调用两种方法onclick,第一种是多次停止单击按钮,第二种是显示确认框。用户单击取消后,用户将无法再次保存它。我正在寻找解决方案以区分这两种肉类。
<apex:commandButton onclick=" this.onclick=function(){return false;}; return showProtocolEditWarning();" action="{!save}" value="Save" id="commandButtonSave"/>
function showProtocolEditWarning(){
if(projectId && praProtocol){
var newProject = document.querySelector('input[id$="inputFieldPraProject_lkid"]').value;
var protocolIdElement = document.querySelector('select[id$="protocolIdList"]');
var newProtocol = protocolIdElement.options[protocolIdElement.selectedIndex].value;
if(praProject.substring(0,15) != newProject.substring(0,15) || praProtocol != newProtocol){
return confirm('Changing the protocol will reset the project Team members');
//window.location.reload() ;
}
}
return true;
}
答案 0 :(得分:0)
您应该检查用户单击的内容,而不是返回confirm(...)
,如果用户单击“取消”,则应使用location.reload()
重新加载页面:
function confirmMessage() {
if(confirm('Your confirmation msg')) { //i.e. if the user pressed ok
//handle this
}
else { //i.e. user pressed cancel
location.reload();
}
}