Grails - 根据 confirm() 提示消息执行表行删除



我有一个包含员工的表,这个表有一个删除按钮。按下此按钮时,行删除将发生,而不会显示任何确认消息。

所以我尝试添加这样的 confirm(( 对话框提示,但我无法正确控制发生的事情,因为无论我做什么,行删除总是会发生。这是因为以下代码:

.gsp 页面:

<td class="text-center">
<g:link controller="employee" action="deleteRecord" params="${[id: celldata.get('id')]}">
<button type="button" class="btn btn-danger" onclick="getConfirmation();">Delete</button>
/g:link>
</td>

JavaScript代码:

function getConfirmation() {
var retVal = confirm("Are you sure you want to delete ?");
if( retVal == true ){
alert("User wants to delete!");
return true;
}
else{
alert ("User does not want to delete!");
return false;
}
}

无论我在提示消息中添加什么,员工控制器中的 deleteRecord 函数都将始终执行。如何根据 confirm(( 提示符下的消息停止 deleteRecord 函数执行?

小提琴位于这里

您可以将onclick="getConfirmation();"更改为onclick="return getConfirmation();"以防止默认的点击操作。

如果不return函数的返回值,getConfirmation将不会使用。

如果不显式返回,则可以将事件传递给函数并将event.preventDefault();添加到函数体。